黑马程序员技术交流社区

标题: 关于继承? [打印本页]

作者: 騛鹏    时间: 2013-3-28 10:35
标题: 关于继承?
本帖最后由 騛鹏 于 2013-3-28 11:15 编辑

刚看到《JAVA就业培训教程》Object类
如果一个类没有使用extends 明确标识继承另外 一个类,那么这个类就默认继承Object类。
那么若是一个类明确标识继承了其他类,是否不再是Object的子类,如果仍是其子类的话,是否违背了JAVA

单继承的原则。
作者: 李尧    时间: 2013-3-28 10:44
本帖最后由 李尧 于 2013-3-28 10:45 编辑

A继承B
B继承C

C是A的super类   不冲突..
就像某人清楚的知道他爸爸是谁,这跟他还有个爷爷不冲突吧?
作者: 小黑黑    时间: 2013-3-28 10:46
没有违背的,比如说你的类A继承了类B,那么,类A隐式的继承类Object就没有了,但是类B还是会隐式的继承Object的,这样说来,Object就是类A的爷爷了。
这就像构造函数一样,你没显示的定义构造函数,就会有一个默认的无参构造函数,如果你自定义了构造函数,那么这个隐式的就不会被系统加入了。
也就是说Object是所又类的超类,是最根上的,你其实可以将这个继承想象为大树,即使树杈不从根上得到养分,那么也会通过树干得到养分,那么树干的养分不也是从树干得到的吗。
作者: fighting    时间: 2013-3-28 11:08
是否是多继承,是从横向的角度去看的
比如说A类不能同时继承B、C两个父类(其中B、C是两个无关的类,不存在继承关系)

但是A类可以继承B类,即使B类还继承了C类,这是纵向的关系,对于每一个单独的类来说
它只有一个父类。




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