Java默认方法多继承超级关键字令人困惑

时间:2017-02-01 08:47:24

标签: java

public interface A{
  default void decorateWithPaints(){
    System.out.println("Decorate in A using paints");
  }
}

public interface B{
  default void decorateWithPaints(){
    System.out.println("Decorate in B using paints");
  }
}

public class C implements A,B{
  @Override
  public void decorateWithPaints() {
    A.super.decorateWithPaints();
  }
}

A.super.decorateWithPaints()这实际意味着什么?    我们知道我们可以使用super关键字访问超类方法。但在这种情况下,我们必须提供接口名称来访问默认接口方法。这让我很困惑。

0 个答案:

没有答案