在“O'Reilly - Programming Android”中,他们建议避免使用以下代码:
ArrayList<String> a = new ArrayList<String>();
但用这个替换它:
List<String> a = new ArrayList<String>();
他们认为,如果以后a
应该将类型更改为链表,则维护代码会更容易。如果是这样,为什么不把它做成 type Collection
,甚至Object
?
我觉得由于必须更改实例化以更改其类型,因此最好尽可能限制其类型并在需要时更改额外的行。
他们是正确的吗?