黑马程序员技术交流社区

标题: 接口,抽象类,实体类的关系 [打印本页]

作者: honeys天空s    时间: 2013-12-2 14:06
标题: 接口,抽象类,实体类的关系
本帖最后由 honeys天空s 于 2013-12-3 12:59 编辑

问下大家:接口可以继承接口吗?抽象类是不是可以可以实现接口,继承实体类?
作者: 姐的霸气谁懂    时间: 2013-12-2 15:55
接口是可以继承接口的 而且可以多继承 而类只能是单继承
所以抽象类是可以继承接口的
作者: 不明觉厉    时间: 2013-12-2 16:23
接口是可以继承接口的,至于抽象类,抽象类主要是用来被继承的,类似于只是定义一种概念,因为可能用户希望他所编写的类有相同的一部分成员,这时可以用抽象类作为父类,这样就可以实现子类有一部分相同成员,而抽象的父类只是实现这一要求,并没有别的作用。
C++中支持类的多重继承,而C#中不支持,一个类只能继承一个基类,但是可以继承多个接口。

一句话,抽象类主要是用于被继承
作者: u010209195    时间: 2013-12-2 16:58
别                抽象类                                         接口


定义                包含一个抽象方法                        抽象方法和全局常量的集合


组成                构造方法、抽象方法、                常量、抽象方法
                普通方法、常量、变量
使用                子类继承抽象类(extends)        子类实现接口(implements)


关系                抽象类可以实现多个接口                接口不能继承抽象类,但可以实现多个接口


常见设计模式        模板设计模式                        工厂设计、代理设计


对象                都是通过对象的多态性产生实例化对象


局限                抽象类有单继承的局限                接口没有此局限


实际                作为一个模板                                作为一个标准或表示一种能力


选择                如果抽象类和接口都可以使用,则优先使用接口,避免单继承的局限


特殊                一个抽象类中可以包含多个接口,一个接口中可以包含多个抽象类




总结:一个类不要去继承一个已经实现好的类,只能继承抽象类或实现接口,如果接口和抽象类都可以使用,那么优先使用接口
,避免单继承的局限

作者: 大牙到潍坊    时间: 2013-12-2 23:04
接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。




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