1. 程式人生 > 其它 >繼承父類並實現多個介面_hehe.base.10.3

繼承父類並實現多個介面_hehe.base.10.3

技術標籤:# 間接一步java

10.10 繼承父類並實現多個介面

  • 介面沒有靜態程式碼塊或者構造方法
  • 一個類的直接父類是唯一的,但一個類可以同時實現多個介面
  • 格式:
public class 實現類名稱 implements 介面A,介面b {
覆蓋重寫所有抽象方法
}
  • 如果實現類所實現的多個介面當中,存在重複的抽象方法,那麼只需要覆蓋重寫一次即可;
  • 如果實現類沒有覆蓋重寫所有介面當中的所有抽象方法,那麼實現類就必須是一個抽象類
  • 如果實現類實現的多個介面當中,存在重複的預設方法,那麼實現類一定要對衝突的預設方法進行覆蓋重寫
package com.xww.day10.demo01;
//介面A
public interface MyInterfaceA {
    public abstract void methoda();
    public abstract void methodab();
    public default void method(){

    }
}

package com.xww.day10.demo01;
//介面B
public interface MyInterfaceB {
    public abstract void methodb();
    public abstract void methodab();
    public default void method(){

    }
}

package com.xww.day10.demo01;
//實現類
public class MyInterfaceImpl implements MyInterfaceA,MyInterfaceB {

    @Override
    public void methoda() {
        System.out.println("介面A中的抽象方法");
    }

    @Override
    public void methodb() {
        System.out.println("介面B中的抽象方法");
    }

    @Override
    public void methodb() {
        System.out.println("介面A和B中的重複的抽象方法");
    }

    @Override
    public void method() {
        System.out.println("覆蓋重寫A和B中重複的預設方法");
    }


}

  • 一個類如果直接定義父類當中的方法,和介面當中的預設方法產生了衝突,優先使用父類當中的方法。
    在這裡插入圖片描述在這裡插入圖片描述