package prepare1; interface A{ public void fun1(); } interface B1 extends A{ public void func2(); @Override default void fun1() { System.out.println("父接口的方法1"); } } interface B2 extends A{ public void fun3(); @Override default void fun1() { System.out.println("父接口的方法2"); } } class C implements B1{ @Override public void func2() { System.out.println("子接口的方法"); } } public class Test { public static void main(String[] args) { A a = new C();//普通类 实例化 爷接口 B1 b1 = new C();//普通类 实例化 父接口 C c = new C();//普通类 实例化 普通类 a.fun1(); b1.fun1(); b1.func2(); c.fun1(); c.func2(); } }