Java类默认情况下会隐式扩展java.lang.Object

时间:2015-04-16 10:40:43

标签: java class object inheritance multiple-inheritance

在本教程(http://www.studytonight.com/java/object-and-classes)中,我读到 java类可以选择扩展一个父类。默认情况下,它将扩展java.lang.Object。

注意:重要声明我读过 Java枚举隐式扩展java.lang.Enum类,因此你的枚举类型不能扩展另一个类。

根据注意,我们的普通java类不应该扩展其他类,如enum(枚举类型不能扩展另一个类)。但我们可以继承一个类。这是多重继承。?

java类中的

可以由extends关键字派生。像这样

class SomeClass
 { }
class MyClass extends SomeClass{}

默认情况下,所有java类如何在java中不使用extends关键字扩展java.lang.Object类?

当我们的类扩展了一些基类时,它就变成了多重继承。我在stackoverflow中搜索,但我仍然不清楚。 By default any class extends Object class. Doesn't it mean java supports multiple inheritance?

任何人都可以通过简单示例澄清这一点。

2 个答案:

答案 0 :(得分:5)

  • 除了java.lang.Object之外,每个类都只扩展一个类。
  • 如果您写extends Something,那么您的课程会扩展Something。
  • 如果你不写extends Something,那么你的类扩展了java.lang.Object。 (就像你写了extends Object
  • 一样

答案 1 :(得分:2)

如果你不扩展任何类,你仍然会扩展Object。如果你明确地扩展了某个类,那么只扩展这个类,但是扩展类在其他方面会默认扩展Object。这样,Object总是在类层次结构中。