如果一个类继承了两个类,但是这两个类中有相同的方法,那么子类调用方法时,无法确定应该调用哪个父类的方法。

【c++是多继承的】

 

接口

jdk1.7  接口可以多继承,是因为当接口中是抽象方法。不存在上面的情况。

jdk1.8及以后版本,接口可以写默认方法,多继承时发现有同名的默认方法,编译器会要求重写默认方法

public interface A {

    void fun1();

    default void foo() {

    }
}
public interface B {
    void fun1();

    default void foo() {

    }
}
public interface C  extends A , B {

    @Override
    default void foo() {
        B.super.foo();
    }
    
}

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-04-09
  • 2022-12-23
  • 2021-07-30
  • 2022-01-14
  • 2021-11-29
  • 2021-04-27
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-04-22
  • 2022-01-13
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案