Java中一个类可以实现多个接口:
1.多接口中重名默认方法处理的解决方案
比如,在INet接口和IPhoto接口中,均有默认方法 connection;此时,SmartWatch类实现了这两个接口,如果对此不进行处理会报错:
解决方案:
在SmartWatch类中,定义一个自己的connection方法:
这个时候:三种情况下的调用,均是调用的实现类中定义的默认方法。
注:这儿相当于是对两个接口中重名方法的覆盖和摒弃
2.父类和多接口中重名方法的处理方案
另一种情况:类B继承了类A,实现了接口C和D;且类A,接口C和接口D中均有相同前面的connection方法,那么此时应该如何处理?如下:
两个接口和一个父类中,均有b方法;
首先,当实现类里没有b方法时:没有报错
其结果:直接调用的父类中的b方法; (很显然,子类继承了父类的b方法)
其次,当实现类里有b方法时:自然也没有报错
其结果:就是调用的实现类里的b方法 (子类重写了父类的b方法)