接口默认方法
Java8以前版本JDK中规定,接口中所定义的方法只能是抽象方法,从Java8开始,接口中可以添加一个或多个由default关键字修饰的非抽象方法,该方法又称为扩展方法,该默认方法将由接口实现类创建的对象来调用,如下例:
public interface IMammal {
void move();
public default void eat() {
System.out.println("哺乳动物正在吃......");
}
}
静态方法
同样,从Java8开始,接口中可以添加一个或多个由static关键字修饰的非抽象方法,该方法将由接口直接调用,如下例:
interface IMammal {
void move();
static void eat() {
System.out.println("哺乳动物正在吃......");
}
}