为了解决当原有的接口中方法不足时,向原有的接口中添加新的方法,该接口下的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();