A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

子类继承父类,子类实现接口,还可以重载和重写,子类的功能不是更强大吗?为什么还要面相父类或者接口?菜鸟,求解释!

13 个回复

倒序浏览
子类不去继承父类,他怎么拥有使用父类的各种方法,也无法去补充父类的各种功能,.子类不去实现接口,他怎么去重写接口内的抽象方法以实现接口的扩展功能.
一个类不去继承父类,实现接口那他只是个普通类,不是子类.
回复 使用道具 举报
就是希望编写的代码能够应用于更多类型的对象吧
回复 使用道具 举报
子类继承父类,子类实现接口,还可以重载和重写,子类的功能不是更强大吗?为什么还要面相父类或者接口?
个人觉得父类或者接口的好处了这个就是,用父类或者接口你的程序的扩展性就会增加,而不会説如果你需要再写一个有类似的子类还要从头写,只需要把共性的内容封装继承过来就好了!
回复 使用道具 举报
因为可扩展性更强啊:victory:
回复 使用道具 举报
M单色调 来自手机 中级黑马 2014-8-4 19:00:53
地板
huoshao008 发表于 2014-8-4 16:25
子类不去继承父类,他怎么拥有使用父类的各种方法,也无法去补充父类的各种功能,.子类不去实现接口,他怎么去 ...

那跟直接子类对象化有什么关系呢?
回复 使用道具 举报
M单色调 来自手机 中级黑马 2014-8-4 19:14:11
7#
alvinbx 发表于 2014-8-4 18:02
因为可扩展性更强啊

麻烦说具体点,最好能给个例子!谢谢了!
回复 使用道具 举报
M单色调 来自手机 中级黑马 2014-8-4 19:15:41
8#
柳超 发表于 2014-8-4 17:49
子类继承父类,子类实现接口,还可以重载和重写,子类的功能不是更强大吗?为什么还要面相父类或者接口?
...

觉得还是跟把子类直接对象化没关系。。。
回复 使用道具 举报
M单色调 来自手机 中级黑马 2014-8-4 19:20:14
9#
江苏孙浩 发表于 2014-8-4 17:45
就是希望编写的代码能够应用于更多类型的对象吧

开始我也这样觉得,比如说将对象装到集合的时候,子类,孙子类都能用到泛型。但是仅有这点也不至于非要面相父类和接口啊!
回复 使用道具 举报
List allList = new ArrayList();Collections.sort(allList);合法
ArraryList allList = new ArrayList())?Collections.sort(allList搜索);不合法
  你是这个意思 吗?
回复 使用道具 举报
比方说你要做一个web项目实现添加用户的功能,你在接口里有addUser方法,你要把这个用户存到数据库,你可以用jdbc,也可以用hibernate,这时候就可以把业务逻辑与实现的方法分离开。想用jdbc实现就用jdbc,如果后期改为hibernate,直接修改实现类就行了,便于代码分离。这个你明白吗
回复 使用道具 举报
面向接口编程或是面向抽象编程是设计模式里很重要的原则。因为接口或者是抽象的,抽象的东西比较稳定,而具体实现是变化相对剧烈的。面向接口编程的原则是为了让软件尽可能应对变化。
回复 使用道具 举报
面向父类的话,父类的引用可以指向子类对象。那么同一个引用可以指向多种子类对象。这样的话程序的拓展性很好。
回复 使用道具 举报
LFW 中级黑马 2014-8-4 22:37:02
14#
为什么要有PCI接口?因为想要降低主板和网卡声卡的耦合性。不管你是什么厂商的网卡,只要能符合我的接口,你就能被我所用,我要换网卡只需要一插一拔就OK了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马