Java程序设计语言提供两种机制,可以用来定义允许多个实现的类型:接口和抽象方法,这两者直接醉为明显的区别在于,抽象类允许某些方法的实现,但接口不允许,一个更为重要的区别在于,为了实现由抽象类定义的类型,类必须成为抽象类的一个子类.任何一个类,只要定义了所有必要的方法,并且遵守通用约定,它就被允许实现一个借口,而不管这个类是处于类层次的哪个位置.因为Java只允许单继承,所有抽象类作为类型定义受到类极大的限制. 现有的类很容易被更新,以实现新的接口. 如果你希望让两个类扩展同一个抽象类,就必须把…