关于接口的多继承的理解

转:https://blog.csdn.net/colayeah/article/details/54583499

Java语言是面向对象的:Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)

对于类之间的单继承我们很好理解,是为了避免子类被引用的时候同一个方法无法判断应该使用哪个父类的方法,如类One同时继承了类Two和类Three,类Two和类Three中都有printStr方法,当调用pringStr方法的时候,就无法选择使用哪个类的,编译器直接报错!

所以对于类的继承extends来说只能是单继承的。

但是接口之间确实多继承的,难道接口没有上面提到的类继承的那些问题吗?这里需要重温一下接口的特点,如知识点二。接口都是抽象的,他下面的方法也必须全部是抽象方法,没有任何的具体实现,即使继承的两个父接口包含同样的方法也没有任何影响,可以看下面的例子:InterfaceOne继承了InterfaceTwo和InterfaceThree,同时InterfaceTwo和InterfaceThree中都定义了抽象方法printStrByInterface:

猜你喜欢

转载自blog.csdn.net/qq_34602647/article/details/82766500