Java让我在接口中定义一个静态方法

时间:2015-03-09 20:10:27

标签: java

public interface B {
    String iname = "TBA";
    int iid = 0;

    public static void main(String[] args) {
        System.out.println("Hello");
    }

    public static void goForIt() {
        System.out.println("Went for it");
    }

    public void doSomething();

}

现在......

public class D {

    public static void main(String[] args) {
        B.goForIt();
    }
}

这成功印刷了“Went for it”。有人告诉我,接口不能有静态方法。那么,这里发生了什么?但是,当我有一个类工具B时,静态方法不起作用。

1 个答案:

答案 0 :(得分:3)

Java 8 has introduced能够在接口中使用static方法。

  

Java SE 8中的增强功能

     

...此外,您可以在接口中定义静态方法。

但是static方法仍未继承,无论是实现接口还是来自超类。