Java 8中默认接口和静态接口方法之间的区别
根据Oracle的Javadocs-
默认方法使您可以向库的接口添加新功能,并确保与为这些接口的较早版本编写的代码二进制兼容。
静态方法是与其定义的类相关联的方法,而不是与任何对象相关联的方法。该类的每个实例都共享其静态方法。
接口中的静态方法是接口类的一部分,无法实现或覆盖它,而类可以覆盖默认方法。
接口中默认和静态方法的示例
public interface DefaultStaticExampleInterface {
default void show() {
System.out.println("In Java 8- default method - DefaultStaticExampleInterface");
}
static void display() {
System.out.println("In DefaultStaticExampleInterface I");
}
}
public class DefaultStaticExampleClass implements DefaultStaticExampleInterface {
}
public class Main {
static void main(String args[]) {
//上调用接口静态方法
DefaultStaticExampleInterface.display();
DefaultStaticExampleClass defaultStaticExampleClass = new DefaultStaticExampleClass();
//在类上调用默认方法
defaultStaticExampleClass.show();
}
}热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短