开发Java,你一直获悉,其最好使用List接口作为列表存储在该变量的类型来创建一个ArrayList。像这样为什么大多数例子中使用的ArrayList
List<String> myList = new ArrayList<String>();
但是,通过查看包中包含的很多android示例,他们使用Class创建了列表。
ArrayList<String> myList = new ArrayList<String>();
是否有任何理由这样做?它是更快,更轻或什么明确设置类?
“你总是知道最好通过使用List接口来创建一个ArrayList”。有趣的是,我从来没有听说过。这样做的好处是什么? – 2010-10-20 14:15:55
@Brian如果您尽可能使用接口,代码将从列表的实现中分离出来。更容易将列表替换为仅实现列表接口的另一个对象。像一些奇怪的数据库抽象或其他东西。 – Janusz 2010-10-20 14:20:48
什么时候有例子总是使用最佳实践?大多数MySQL/PHP示例都充斥着SQL注入攻击和其他问题。网络上的大多数示例都是以尽可能少的代码获取尽可能多的功能,或尽可能容易理解的代码,同时完全忽略最佳实践,潜在的安全漏洞和错误检查。 – Kibbee 2010-10-20 15:18:27