关于扩展课程

时间:2013-02-20 12:45:31

标签: java

我在java中有一个查询,因为Object类是所有类的父类,我想知道Object类是由java中的每个类隐式扩展的。

例如:如果我创建了一个对象类B,那么我扩展了类A,这是正常的,因为在java中,类最多只能扩展一个类,但是因为我的类{{1已隐式扩展B类,那么它如何扩展类Object?请指教。

4 个答案:

答案 0 :(得分:0)

仅当未指定父级时,它才会隐式继承Object,否则它只会继承指定的父级。

旁注:

这是允许的:

  C
  |
  A
  |
  B

在上述情况下,将C替换为Object以符合您的要求。

这是不允许的:

C   A
 \ /
  B

继承可以像你想要的那样深,但是一个对象不能有多个父对象。

答案 1 :(得分:0)

将其视为家庭树,其中个人只有一个父母。每个人只有一个父母,但所有父母的祖先也是个人的祖先。这就是所谓的所有类扩展Object时的意思:它是所有类中最远的祖先,尽管只有那些用extends Object或没有{声明的类的直接祖先(父)。 {1}}声明。

答案 2 :(得分:0)

我认为你知道这个概念,但你必须有点困惑。想到一棵树。对象类是该树的根。它之间有叶子和其他节点。无论你的类层次结构是如何设计的,它最终都会成为Object,因为它的根就是那个。所以你可以扩展任何类(不是抽象或接口),而不考虑Object类。因为Object扩展将自动为您完成。

答案 3 :(得分:-1)

在这里,我建议,关键字是 EXPLICIT 。您可以明确只扩展一个类。但是如果你不这样做,Java将使用Object类隐式扩展你的类。如果你已经完成,那么Object必须位于继承类的层次结构中。