五、 面向对象篇
34 extends和implements有什么不同?
答:extends用于(单)继续一个类(class),而implements用于实现一个接口(interface)。
interface的引入是为了部分地提供多继续的功能。在interface中只需声明方法头,而将方法体留给实现的class来做。这些实现的class的实例完全可以当作interface的实例来对待。有趣的是在interface之间也可以声明为extends(单继续)的关系。
35 Java怎么实现多继续?
答:java不支持显式的多继续。因为在显式多继续的语言例如c++中,会出现子类被迫声明祖先虚基类构造函数的问题,而这是违反面向对象的封装性原则的。java提供了interface和implements要害字来部分地实现多继续。参见34。
36 abstract是...[ 查看全文 ]