//JDK 1.8以後,方法可以有方法體,要加上default
//1.8以後可以有靜态方法
public interface Drawable {
int a = ;
void draw(int i);
default void method(){
System.out.println("default修飾");
}
static void d(){
System.out.println("static修飾");
}
}
如果一個類實作兩個接口,這兩個接口同時有相同的抽象方法,在類中隻需要重寫一次這個方法。
如果接口中有default修飾的方法不需要重寫。
如果兩個接口裡的方法名相同都是default方法,裡面的方法體不同,在類中需要重寫該方法。
如果兩個接口中方法名,參數都相同的方法,一個接口是抽象方法,另一個是default修飾有方法體。這是該類也必須重寫該方法。
. //JDK1.8以後的lamdba文法,隻能實作單方法的接口。
Drawable drew = (i) ->{
System.out.println("lambda " + i);
};
drew.draw();//調用接口裡的方法