接口,可以将对象的使用标准化,即面向接口编程。父类为接口,规定使用的方法;子类为各种不同的具体实现,根据实际需求选用不同的实现。
在这个例子中,List
为父类接口,提供标准的method。ArrayList
和LinkedList
都是其子类,即对父类接口List的不同实现。
若在最初编写代码时选用ArrayList
,而随着需求变更需要替换成LinkedList
。使用List<String> list=new ArrayList<String>()
创建list
,在改变list
的实现时(从ArrayList
换成LinkedList
)只需改变一句话,即List<String> list=new LinkedList<String>()
,而对list
的调用均无需改变
理解向上转型和向下转型
https://blog.csdn.net/qq_31655965/article/details/54746235