之前一致对这个问题一头雾水,现在看了http://blog.youkuaiyun.com/mfjiyi/article/details/17271105,才有所了解
看到这个标题,你或许就会想好自己的那份答案。但事实上这个确实没有答案,至少没官方证明它们之间的基友关系。。
看法一:因为老师说,你可以把接口看作是特殊的类,所以不假思索的就认为接口也 继承 根类Object (这种看法是最无厘头的)
看法二:毫无瓜葛。(找到一种不错的理由支持这一观点)
用反正发来证明两者毫无瓜葛。如果接口继承Object类,那么你可以直接在接口名后面加extends Object。如下声明一个接口。很明显,这个编译都通过不了。
- Interface Inter extends Object{
看法三:隐含继承(也找到一种不错理由支持这一观点)
看如下代码: List接口中如果没有toString()方法,那么由多态或继承的原理,System.out.println(array.toString());会报错。 但事实确实不会报错。
- List array= new ArrayList();
- array.add("hello");
- System.out.println(array.toString());
本人观点。第三种观点可能是正确的,但是确实没办法证明。与其说是隐藏关系,还不如说有可能是接口中隐形的实现过Object中所有的方法呢。这个问题,可能确实不在我的能力范围之内,看以后能否学得更底层,去了解到。
版权声明:本文为博主原创文章,未经博主允许不得转载。