关于多接口中重名常量与方法的问题

  1. 在一个类中实现多个接口时, 接口中都有默认的同名抽象方法 ,则在类的实现过程中, 编译器会报错 , 需要在类自己的类中重写默认的同名方法 , 所以在主方法中调用的时候, 则为类中重写的默认方法.
  2. 在类中既可以继承父类又可以实现多个接口, extends一定在implements之前.如果在父类和接口中也有重名方法时, 在类中没有重写接口中的方法, 编译器也并不会报错 , 因为子类直接继承了父类的同名方法 ,可以视为重写了接口中的同名方法 ,而在子类中重写了该方法, 则用子类重写的方法, 原理就是在子类自己的方法 > 父类中的方法 > 接口中的方法 .
  3. 但是父类中和接口中重名的成员属性(不是方法!!)重名时, 编译器也会报错无法识别, 解决办法如(1)中, 在子类中重写定义该成员属性.如果继承的父类和接口中的常量同名,父类不占优势,会报错,只能在子类中创建独有的常量成员

    推荐阅读