java中的这两个事实
事实 1
“默认情况下,java 中的每个类都扩展了 java 元类 Object
”
和
事实 2
“java 中不允许多重继承”在这里阅读更多关于菱形问题的信息 Java inheritance
很安静
假设 ClassB
扩展 ClassA
然后根据 fact1 ClassB
扩展 Object
这是否意味着 ClassB
正在扩展 ClassA
和 Object
?是多重继承的情况吗?
如果不是多重继承那这两个说法怎么不矛盾呢?
最佳答案
“Every class in java by default extends the java meta class Object” //fact1
每个类都扩展 Object
类,只有当它们不直接扩展任何其他类时。
如果一个类 Test
扩展了另一个 Sample
类,那么 Test
不要直接扩展 Object
类,但是,通过父类(super class) Sample
继承了 Object 类的行为,它直接扩展了 Object
类。
关于java - “every class in java extends the MetaClass Object” 是否意味着每个子类都会导致 Diamond 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22881645/