2011-03-06 85 views

回答

4

第一行中类型的ArrayList,第二行存储在List类型的变量的变量创建一个ArrayList,并将其存储。

List是其中的一个接口,其中ArrayList是一个实现。确定哪种类型的实例存储在(List或具体实现,如ArrayList)中的经验法则是您应该以最适合您需求的通用级别进行存储。这意味着如果您知道变量必须符合仅由ArrayList而非一般List表示的行为,那么您应该使用ArrayList,否则使用List。 (这对于LinkedList或其他List实现,太)

1

为什么要使用第二行是因为它通常是更好的方案来比去的类接口的原因,有时它是把好做法,以做到这一点,一个带来的好处是,你最终与代码:

这是更好地测试 可以使用不同的实现 这不是耦合到ArrayList的

欲了解更多信息,你可以看看“好莱坞原则”或策略模式