黑马程序员技术交流社区

标题: List 是一个接口,那为什么Arrays.List(Array arr),方法返回的是. [打印本页]

作者: nuddlesW    时间: 2014-12-3 11:45
标题: List 是一个接口,那为什么Arrays.List(Array arr),方法返回的是.
List 是一个接口,那为什么Arrays.List(Array arr),方法返回的是一个List,这样不是相当于接口构建对象了吗?不解
作者: cs8630323    时间: 2014-12-3 13:26
多态啊{:3_49:}
作者: 大大的心    时间: 2014-12-3 13:36
这样的设计方式更佳,你现在可能暂时无法理解,但是等你学完java基础,就能更好的理解这种思想了。

这个称之为面向接口编程,是java语言的一大优点。

ArrayList虽然是一个具体的类,按照ArrayList List=new ArrayList();生成ArrayList对象,而且编译也不会报错。

但是在实际开发中时不采用这样的方式。

即实际开发时都是 接口名  xxx=new 接口某实现类()。

面向接口编程的优势:
      1。便于程序规范化设计
      2。便与团队协同开发
      3。便于转换为组件
      4。方便的代码复用,无需了解技术细节。
作者: 与梦逆风而行    时间: 2014-12-3 13:37
楼上好回答   学习了
作者: lidinghai    时间: 2014-12-3 14:27
为楼上的回答点个赞!
作者: lwh316658735    时间: 2014-12-4 18:20
java的多态机制
作者: qq623324733    时间: 2014-12-4 18:58
学习了。。
作者: dengchao    时间: 2014-12-4 20:12
赞一个,一起努力阿




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