在new一个新对象时,左边尽量使用接口(或者抽象类),以保持代码的最大灵活性。
①java是面向对象语言,面向对象一个重要的原则就是“依赖倒置原则”。依赖抽象(接口),而非具体(实现类)。List是接口,ArrayList是实现类。它允许list可以轻松地在接口的不同实现之间切换。
②List的实现类包括List,Vector,LinkedList , Stack…
使用List list = new ArrayList();你将来如果需要改成线程安全的Vector,不必注意一开始使用的是ArrayList还是Vector还是其他的实现类。而是只把创建时使用ArrayList改成Vector就行了。即List list = new Vector();
这种方法实现解耦合,大大提高代码使用的灵活性和通用性。