阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第3节 接口_14_接口之间的多继承



新建接口,并定义抽象方法mehtodA


再创建接口B,方法也改成了methodB


定义接口实现了接口A也实现了接口B

这个接口内置定义一个抽象的method,这个接口里面实际有三个抽象方法,从接口A继承了methodA。从接口B继承了methodB

接口B内 再增加一个methodCommon的方法

在接口A里面也定义了,方法mehtodCommon

那么现在这个子接口内,一共有几个方法????、


新建实现接口类。 实现子接口

Alt+回车

这样就是一共有四个方法


这就是接口与接口之间的多继承。
但是如果有冲突该怎么办?抽象方法重复,没关系因为没有方法体。但是默认方法重复了就不行,因为默认方法是有方法体的

在接口A中定义默认方法

接口B中也定义默认方法,和方法A中重名

这样子接口就报错了。 因为父接口有重复的 默认方法


alt+回车。这里默认选择的不对。

我们自己选择那个重名的默认方法


这样就出现了@Override。同时还是带这default关键字的

同时自己可以在前面加上public。这里的public可加可不加。
但是default是不能删除的。删除就报错








 

原文地址:https://www.cnblogs.com/wangjunwei/p/11219073.html