黑马程序员技术交流社区

标题: 多态的好处???List li=new ArrayList(); [打印本页]

作者: my1111wxy    时间: 2014-10-24 13:54
标题: 多态的好处???List li=new ArrayList();
本帖最后由 my1111wxy 于 2014-10-24 13:56 编辑

ArrayList al=new ArrayList();
List li=new ArrayList();
老师都是用下面这种创建集合对象,虽然说多态能提高扩展性,但请问这样创建有什么实际性的好处吗。毕竟父类有的子类都已经继承了,还要父类做什么???
作者: 李春江    时间: 2014-10-25 21:03
多态只是对象的其他表现形态;
1.不太恰当的例子:就像人一样,(在同类中)可以叫你人,(在动物界)也可以叫你动物。但是当在一部讲述生动物和植物区别的时候,你说是叫你做人好,还是这类动物好呢。
2.比如实现接口,假如有个Child类,实现了动物Animal这个接口;
另一只Cat类也实现了动物Animal这个接口;
假如有一个类只想用Animal这个接口里的功能,这时候Child和Cat都满足,因为从多态来看他们都是Animal;




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2