java的接口中 可以定义 静态方法
网上查了许多的博客都说的是不可以,我们老师也说得是不可以。但我自己实验了一下,发现居然可以在接口中定义静态方法(static)惊奇(⊙o⊙)?难道是是我的jdk版本比较新的原因,后面的java规则发生了变动?
而且不仅java的接口中可以定义静态方法,抽象类中也可以。但是定义的静态方法在实现或者继承的子类中是不可见的。即在实现接口的类中,无法使用接口中的静态方法
interface fi {
static void f1() {
System.out.println("接口中可以定义静态方法");
};
}
class fi2 implements fi {
}
abstract class fi1 {
static void f1() {
System.out.println("抽象方法中可以定义静态方法");
};
}
public class Test1 {
public static void main(String[] args) {
Path p1 = Path.of("C:/Users/Maibenben/Desktop/测试/1.txt");
Path p2 = Paths.get("C:/Users/Maibenben/Desktop/测试/1.txt");
fi.f1();
fi1.f1();
}
}