為了解決當原有的接口中方法不足時,向原有的接口中添加新的方法,該接口下的N多實現類也需要重寫該方法的問題!Java8引入了接口定義增強概念!
Java8 打破了原有的接口的方法定義: 公共的、抽象的
interface IMassage{ public abstract void print(); //這是接口裡面原有的定義 public default void fun(){ //在接口裡面定義普通的方法 System.out.println("采用 default 關鍵字來在接口中定義普通方法!"); } } class MessageImpl implements IMassage{ @Override public void print() { System.out.println("接口的實現類!"); } }
public class NewInterface { public static void main(String[] args) { IMassage massage = new MessageImpl(); //普通的方法實現調用 massage.print(); //調用在接口中的普通方法 massage.fun(); } }
interface IMassage{ public static void funStatic(){ System.out.println("采用 static 關鍵字來在接口中定義靜態方法"); } }
//調用在接口中定義的static 方法 IMassage.funStatic();