java接口随jdk版本更新的变化

jdk1.7以及以前:

    可声明静态常量属性和抽象方法:

 public interface Int1 {
     static final int x=0;
     int y=0;//默认static final
     public abstract void Test1();
     abstract void test2();
    void test3() ;//默认 public abstract
}

jbk1.8:

    在1.7的基础上可以声明静态方法和默认方法

public interface Int1 {
 static final int x=0;
 int y=0;//默认static final
 public abstract void Test1();
 abstract void test2();
  void test3() ;//默认 public abstract
 
  //静态方法和默认方法必须写方法体
  public static void test4() {
       System.out.println("静态方法");
      }
      default void test5() {
       System.out.println("默认方法");
      }
}

扫描二维码关注公众号,回复: 1214232 查看本文章

jdk9:

基于1.8增加了私有方法的声明

 private static void Test6(){ 

}

注意:

1.      实现接口的类(非抽象类)必须实现接口中所有的抽象方法。

2.      接口中的静态方法,只能使用接口名称调用。

3.      接口中default方法属于实现接口类的对象方法,可以重写。

4.      接口中的private static方法只能在接口内调用。

5.      继承的接口实现子接口的抽象方法需要加dafault



猜你喜欢

转载自blog.csdn.net/m_target/article/details/80385859