面向对象进阶之接口中新增方法,接口应用和适配器设计原则代码演示部分
接口A
package Demon05;
public interface InterA {
//接口默认方法的定义格式:public default 返回值类型 方法名(参数列表){}
public abstract void method();
public default void show(){//public可以省,但default不能省
System.out.println("InterA接口中的默认方法---show");
}
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000000")
接口B
package Demon05;
public interface InterB {
public default void show(){
System.out.println("InterB接口中的默认方法--show");
}
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000000")
Impl类:
package Demon05;
public class InterImpl implements InterA,InterB {
@Override
public void method() {
System.out.println("实现类重写的抽象方法");
}
public void show(){//而重写时就不能再写default了,不然就报错
System.out.println("重写接口中的默认方法");
}
}
System.out.println("00000000000000000000000000000000000000000000000000000000000000000000000000000000000")
测试类:
package Demon05;
public class Test {//创建实现类的方法
public static void main(String[] args) {
InterImpl ii=new InterImpl();
ii.show();//重写后的默认方法
}
}
运行结果:
重写接口中的默认方法

浙公网安备 33010602011771号