为什么Object类在java中是超类

为什么对象Class是java中的超类我昨天接受过一次采访,面试官问我这些问题。

因为java.lang包中的Object类位于类层次结构树的顶部。

因为它只是一个定义。 实际上jls8第4.3.2 jls8说:

Object类是所有其他类的超类(第8.1.4节)。

没有更正式的方法来定义Object类。

因为Java中的所有对象都inheritance自Object类。

因此,如果您为MyObject创建类,则此对象的父级将为Object类。

这意味着ObjectMyObject类的超类。

默认情况下,Java中的所有类都“扩展”Object类,这就是Object是Java中每个类的超类的原因。

根据类“对象”的定义 。

Class Object是类层次结构的根。 每个类都有Object作为超类。 所有对象(包括数组)都实现此类的方法。

之前讨论过的类似问题… 由java中的所有类扩展的默认类