通过对象、类,我们实现了封装,通过子类我们可以实现继 。
对于上例来说,公共汽车、出租车、货车等都是汽车,但它 是不同的汽车,除了具有 汽车的共性外,它们还具有自己的特点(如不同的操作方法,不? 的用途等)。这时我们可以 把它们作为汽车的子类来实现,它们继承父类(汽车)的所有状?和行为,同时增加自己的状 态和行为。通过父类和子类,我们实现了类的的层次,可以从最 ?般的类开始,逐步特殊化 ,定义一系列的子类。同时,通过继承也实现了代码的复用,使 序的复杂性线性地增长,而 不是呈几何级数增长。
在C++中支持多重继承,即一个类可以继承多个父类,这使得 象的实现变得非常复杂 且不可预料(设想多个父类拥有某些相同的变量和方法)。Java? 只支持单一继承,大大降低 了复杂度。在Java中通过接口可以实现多重继承,但接口的概念 ?简单,使用更方便,而且不 仅仅限于继承,它使多个不相关的类可以具有相同的方法。