一、接口中的默认方法
在JDK1.8之前,interface之中可以定义变量和方法,变量必须是public、static、final的,方法必须是public、abstract的
在JDK 1.8开始 支持使用static和default 修饰 可以写方法体,不需要子类重写。
1.1、定义接口默认方法
public interface MyInterface {
// 普通抽象方法,默认是public abstract修饰的,没有方法体
void add();
/*
* 默认方法,有方法体 JDK1.8之后
* 任何一个实现了MyInterface 接口的类都会向动继承defaultAdd的实现
*/
default void defaultAdd() {
System.out.println("JDK8--》defaultAdd");
}
/*
* 静态方法,有方法体 JDK1.8之后
* 可以使用MyInterface类直接调用
*/
static void getAdd() {
System.out.println("JDK8--> static getAdd");
}
}
定义接口默认实体方法如果报extension methods are not supoorted at language level 'x'
解决方式请查看: