package demo20201018接口2; public class My implements MyInterfaceA,MyInterfaceB { @Override public void methodA() { System.out.println("覆盖重写了A方法"); } @Override public void methodB() { System.out.println("覆盖重写了A方法"); } @Override public void methodAbs() { System.out.println("覆盖重写了AB接口都有的抽象方法"); } } package demo20201018接口2; /* 使用接口的时候的注意事项 1. 接口没有静态代码块或者构造方法的 2.一个类的直接父类是唯一的,但是一个类可以同时实现多个接口 格式: public class MyInterfaceImpl implements MyInterfaceA,MyInterfaceB{ //覆盖重写所有抽象方法 } 3.如果实现类实现的多个接口当中,存在重复的抽象方法,那么只需要覆盖重写一次即可 4.如果实现类没有覆盖重写所有接口抽象方法,那么实现类就必须是一个抽象类 5.如果实现类实现的多个接口中,存在重复的默认方法,那么实现类一定要对冲突的默认方法进行覆盖重写 */ public interface MyInterfaceA { /* //错误写法 static{ } public MyInterfaceA(){}*/ public abstract void methodA(); public void methodAbs(); } package demo20201018接口2; public interface MyInterfaceB { /* //错误写法 static{ } public MyInterfaceA(){}*/ public abstract void methodB(); public void methodAbs(); }