具有接口的Java 8抽象类具有默认方法

时间:2016-07-19 05:33:38

标签: java eclipse inheritance java-8 default-method

我有一个接口A,其默认方法为printme(),与抽象类B中的方法相同。如果我使用B扩展抽象类TestClass并实现接口A,则printme()中不会显示TestClass方法。 以下是代码:

interface A {

    default void printme() {
        System.out.println("Interface A");
    }
}

abstract class B {
    public void printme() {
        System.out.println("Abstract Class B");
    }
}

public class TestDefaultMethod extends B implements A {

    public static void main(String[] args) {
        TestDefaultMethod td = new TestDefaultMethod();
        td.printme(); //from Interface A
    }
}

我无法理解如何以及为什么我无法从Abstract类访问方法。

0 个答案:

没有答案