接口只是方法的声明,如果要给2w个该接口的实现类添加一个新功能的方法,那直接疯掉。
JDK1.8新增了
1)使用default来描述普通方法,该方法属于对象,使用对象调用该方法
2)使用static来描述静态方法,该方法属于类,这里使用接口名就可以直接调用
package javalixinghuacsdn.hightinterface;
interface Message{
public void print();
//新增以下用default修饰的 有方法体的函数print2
public default void print2(){
System.out.println("interface has default function");
}
public static void print3(){
System.out.println("interface has static function");
}
}
class MessageImpl implements Message{
@Override
public void print(){
System.out.println("Hello world!!");
}
}
public class newhightinterface {
public static void main(String [] args){
Message message = new MessageImpl();
message.print();
message.print2();
Message.print3();
}
}