接口新特性
JDK7和以前的版本 : 接口中的方法只能是抽象方法, 接口权限必须public
JDK8以后,接口中可以带有方法体,非抽象方法, 接口权限必须public
JDK9以后,接口中权限可以是私有
接口静态方法
定义格式 :
public static 返回值类型 方法名(参数列表){
方法体
}
接口名.静态方法()
-
注意 : 实现类,不能调用接口的静态方法.原因是存在安全的隐患
接口的多实现造成
public interface MyInterface { //接口中,定义静态的方法 public static void inter() { System.out.println("接口的静态方法"); } }
接口默认方法
定义格式 :
public default 返回值类型 方法名(参数列表){
方法体
}
默认方法调用 : 实现类的对象调用
实现类实现多个接口,多个接口中带有默认的方法
- 实现类进行重写,运行的都是重写
- 保证接口中的默认方法是不能冲突的,否则编译失败
- 实现接口的时候,多实现,遇到方法冲突的接口,选择不实现