黑马程序员技术交流社区

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

作者: 张森    时间: 2013-1-10 17:54
标题: 关于继承OBJECT
各位同学 请教个问题   Object是所有类的父类  ,意思是不是 就是  所有类都继承Object呢,那这样的话,为什么这些类还可以继承其他类的呢,这不和Java的类之间的单继承矛盾么,Java中接口可以多继承,称之为扩展,类可以多实现接口。

class Student extends Person{

}
就像这里,是不是Java在编译的时候先看看这个Student有没有显示的继承其他类,如果有就,就继承这里的Person类,而Persion类是继承了Object的。如果没有显示的继承关系,那么Java虚拟机就让他继承Object吗 ,请问各位同学 是这样的原理吗。   编译的时候看看有没有显示的继承,有就继承其他,有其他类继承Object,如果没有就直接继承Object?

作者: 张森    时间: 2013-1-10 17:55
在线等   有没有同学解答下呢 ...
作者: 胡勇敏    时间: 2013-1-10 18:05
本帖最后由 胡勇敏 于 2013-1-10 18:08 编辑

Object是所有类的父类,而你所说的又可以继承其他类当然是没有问题的,因为这里的其他类也继承自Object,这里的Object就相当于祖宗,你可以继承你的父辈,但是你的父辈继承自他的父辈,你父辈的父辈又继承自他的父辈,而一层一层的父类追溯上去,所有的类都根于Object。这里是一个层次关系而不是一个并行关系。
作者: 肖亚光    时间: 2013-1-10 18:08
貌似你好像理解错了  a继承b b继承c 没有问题吧
作者: 林嘉健    时间: 2013-1-10 18:17
这个  其实楼主可以反编译一下就知道答案了  

我来直接告诉楼主答案吧

在编译源代码时,当遇到没有父类的类时,编译器会将其指定一个默认的父类(也就是Object),

作者: 黄锦成    时间: 2013-1-10 18:19
没有直接写明extends的,默认继承object,有继承的 如:class Student extends Person{},Student继承了Person,不会继承object,而是由Person继承。在java中,每个类都会继承object,要么是直接继承,要么是间接继承
作者: 张云杰    时间: 2013-1-10 19:00





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