在Java中工作的隐式继承

时间:2011-11-05 10:00:55

标签: java inheritance

有人能告诉我内部的隐式继承是如何工作的吗? 我的意思是,如果我创建一个类,它究竟是如何扩展JVM中的Object类的呢?

提前致谢。

3 个答案:

答案 0 :(得分:3)

Java强制每个类继承。如果你没有显式继承一个类,那么默认情况下Java假定你继承了一个名为Object的类,它没有那么多,但确实有几个有用的方法:

  1. 它意味着每个类都来自Object,因为你继承的任何类都必须从某些东西继承而来,这些东西可以是Object,也可以是从某些东西继承的东西等。
  2. 多态的概念意味着您可以将任何类型的对象存储在类型为Object
  3. 的变量中

答案 1 :(得分:1)

除了Object类之外,Java中的每个类都必须有一个超类。

隐式继承没有什么特别之处。它只是一个语法快捷方式,意味着您不必编写extends Object。在语义级别,隐式继承的工作方式与显式继承完全相同。

实际上,这意味着每个类都从Object继承某些标准方法......除非重写方法。示例包括经常被覆盖的equals(Object)hashcode()toString(),以及无法覆盖的getClass()

答案 2 :(得分:1)

出于所有实际原因,您可以认为class X {class X extends Object {的语法糖 - 就是这样。