Collection是List的父类,List是ArrayList的父类,这就是多态了。
List a = new ArrayList();
父类引用指向子类对象,a只能使用List中有的方法,而ArrayList()的特有方法不能使用。
ArrayList a = new ArrayList();
这个就不是多态了,中规中矩的建立对象,可以使用a自身所有的方法。
Collection a = new ArrayList();
和第一个一样父类的引用指向子类的对象,a只能使用Collection中的方法,ArrayList特有的方法或者从List处覆写的特有方法(如List特有迭代器ListIterator)不能使用。
具体有哪些特有方法可以查阅API文档。
|