理解Java 8 默认方法需理解几个问题:
为什么会出现默认方法?
接口中出现默认方法,且类可以实现多接口的,那和抽象类有啥区别?
多重实现的默认方法冲突怎么办?
1. 什么是默认方法,为什么要有默认方法
1.1 先上例子
一个接口A,Clazz类实现了接口A。
public interface A {
default void foo(){
System.out.println("Calling A.foo()");
}
}
public class Clazz implements A {
public static void main(String[] args){
Clazz clazz = new Clazz();
clazz.foo();//调用A.foo()
}
}