【发布时间】:2014-01-19 19:18:34
【问题描述】:
意味着,默认情况下,Java 中的每个类都扩展 Object 类。
那么接口是否也扩展Object类?
【问题讨论】:
-
接口不扩展任何东西。它不会隐式地扩展对象。
-
标签用户界面并不代表你的想法。请先阅读有用的标签弹出窗口,然后再将它们贴在您的帖子上。
标签: java object inheritance interface
意味着,默认情况下,Java 中的每个类都扩展 Object 类。
那么接口是否也扩展Object类?
【问题讨论】:
标签: java object inheritance interface
“在Java中默认每个类都扩展了Object类。那么接口是否也扩展了Object类?”
不... 1.接口只能扩展另一个接口。在java中,每个类都扩展了对象类(不是每个接口)。
如果一个接口没有父级,那么它将隐含地具有对象类的方法。
【讨论】:
引用类型都继承自 java.lang.Object。类、枚举、数组、接口都是引用类型
(来自http://docs.oracle.com/javase/tutorial/reflect/class/index.html)。
所以我认为答案是肯定的。
【讨论】:
Can you make instances of interfaces? :没有
我们需要实现接口的具体类,同时隐式扩展 Object 类。
Also can you call methods defined in Object class in interfaces? : 否(至少不直接。也许将其用作多态引用。)
接口和对象是两个不同的概念。你不能混合它们。如果它们之间的共同点是它们通常被用作多态引用。
As for how does the code compile when we use interface as polymorphic reference
and call Object methods on it?
接口为 Object 中的每个公共方法声明了一个隐式方法。更多详情可以参考this问题。
【讨论】: