对Java单一继承的疑问

作者在 2008-02-19 14:18:13 发布以下内容
        在Java中,多重继承是不允许的,也就是说,每一个类最多只能有一个父类。如果想实现多重继承可以通过实现多个接口来达到目的。
        不过,貌似有个问题出来了。我们知道,Object是每个Java类的父类,每个类都继承自Object类。但是我们仍然可以自己定义一段继承代码,就像:
        class A extends B
        这样是完全没有错误的。此时,A就有了两个父类,一个是Object,另一个是B。这不是与每个类只能有一个父类矛盾了吗?
        其实,Object类是所有其他类隐藏继承的,也就是implicitly inherit。我们也不用导入java.lang.Object就可以使用这个类里面的方法了。可以说,这是一个特殊的类。这样说也许更好:每个Java类除了Object类以外最多还可以继承一个父类。但是既然可以有两个父类,为什么不能叫多重继承呢?因为我们在写Java代码的时候,不可能出现:
        class A extends B, Object或者class A extends B extends Object
        因为Object是隐藏继承的,所以我们在定义一个类时,最多只能出现一个extends,而且extends后的类最多只能有一个,所以还是单一继承。
Java | 阅读 3004 次
文章评论,共0条
游客请输入验证码