Java中允许对象类的多重继承吗?

Java中允许对象类的多重继承吗?,java,object,multiple-inheritance,Java,Object,Multiple Inheritance,在Java中,他们说不支持多重继承。事实上,Java中的每个类都扩展了类对象。所以如果我写: public class ThreadInstance extends Thread { } 这是如何编译的?这里的ThreadInstance实际上是在扩展线程和对象。这里不是多重继承吗。您的类扩展了线程,但是线程已经扩展了对象,所以它仍然是单一继承,因为它遵循相同的继承线 对象由每个类隐式继承。在ThreadInstance类中,Thread被显式继承 因此,除了对象之外,每个Java类都必须有一

在Java中,他们说不支持多重继承。事实上,Java中的每个类都扩展了类对象。所以如果我写:

public class ThreadInstance extends Thread {
}

这是如何编译的?这里的ThreadInstance实际上是在扩展线程和对象。这里不是多重继承吗。

您的类扩展了
线程
,但是
线程
已经扩展了
对象
,所以它仍然是单一继承,因为它遵循相同的继承线

对象
由每个类隐式继承。在
ThreadInstance
类中,
Thread
被显式继承


因此,除了
对象
之外,每个Java类都必须有一个超类。隐式继承没有什么特别之处,只是为了减少样板代码。

通过多重继承,您应该了解同时继承多个类,例如,不可能创建一个

public class ThreadInstance extends Thread, Object {
}
因为类层次结构如下所示:

ThreadInstance
^            ^
Thread       Object
当您像以前那样定义
ThreadInstance
时,
ThreadInstance
也继承
对象,但它首先继承线程

ThreadInstance
      ^
    Thread
      ^
    Object

这里没有多重继承。

您的类扩展了另一个类,但它也扩展了对象,所以您仍然处于一行继承中,而不是两行继承中

例如。 ThreadInstance扩展线程,但线程反过来扩展对象,所以我不能说ThreadInstance扩展对象