继承父类并实现多个接口和接口之间的多继承

继承父类并实现多个接口

使用接口的时候需要注意:

1.接口是没有静态代码块或者构造方法的。

 

2.一个类的直接父类是唯一的,但是一个类可以同时实现多个接口。

格式:

public class MyInterfaceTest implements MyInterfaceA,MyInterfaceB{

  //覆盖重写所有抽象方法

}

 

3.如果实现类所有实现的多个接口当中,存在重复的抽象方法,那么只需要覆盖重写一次即可。

 

 

4.如果实现类没有覆盖重写所有接口当中的所有抽象方法,那么实现类就必须是一个抽象类。

5.如果实现类锁实现的多个接口当中,存在重复的默认方法,那么实现类一定要对冲突的默认方法进行覆盖重写。

6.一个类如果直接父类当中的方法,和接口当中的默认方法产生了冲突,优先用父类当中的方法

接口之间的多继承

1.类与类之间是单继承的。直接父类只有一个。

2.类与接口之间是多实现的。一个类可以实现多个接口。

3.接口与接口之间是多继承的。

注意事项:

1.多个父接口当中的抽象方法如果重复,没有关系。

2.多个父接口当中的默认方法如果重复,那么子接口必须进行默认方法的覆盖重写,【而且带着default关键字】

复制代码
public interface MyInterfaceA {

    public abstract void metA();

    public abstract void methodCommon();

    public default void methodDef(){
        System.out.println("A");
    }

}
复制代码
复制代码
public interface MyInterfaceB {

    public abstract void metB();

    public abstract void methodCommon();

    public default void methodDef(){
        System.out.println("B");
    }
}
复制代码
复制代码
public interface MyInterfaceAB extends MyInterfaceA,MyInterfaceB{

    public abstract void method();

    @Override
    default void methodDef() {
        System.out.println();
    }
}
复制代码
复制代码
public class MyInterfaceTest implements MyInterfaceAB{
    @Override
    public void method() {
    }
    @Override
    public void metA() {
    }
    @Override
    public void metB() {
    }
    @Override
    public void methodCommon() {
    }
}
复制代码

 

 

 

 

posted @   魔光领域  阅读(88)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示