接口(interface)


接口(interface)

接口抽象方法常量值的集合。從本質上講,接口是一種特殊的抽象類,這種抽象類只包含常量和方法的定義,而沒有變量和方法的實現。

格式:interface 接口名{}

接口的出現將"多繼承"通過另一種形式體現出來,即"多實現"。

實現(implements)

格式:class 類名 implements 接口名 {}

特點

  • 接口不能被實例化。

    接口如何實例化呢?參照多態的方式,通過實現類對象實例化,這叫接口多態。
    多態的形式:具體類多態,抽象類多態接口多態

    多態的前提:有繼承或者實現關系; 有方法重寫; 有父類/接口)引用指向(子/實現)類對象

  • 接口的實現類

    要么重寫接口中的所有抽象方法
    要么是抽象類

接口的成員特點

接口中的成員修飾符是固定的!

  • 成員變量

    ​ 只能是常量
    ​ 默認修飾符: public static final

  • 構造方法
    接口沒有構造方法,因為接口主要是對行為進行抽象的,是沒有具體存在
    個類如果沒有父類,默認繼承自Object類

  • 成員方法
    只能是抽象方法
    默認修飾符: public abstract

繼承與實現的區別:

  • 類與類之間稱為繼承關系
    • 只能單繼承,可以多層繼承。((class)
  • 類與接口之間是實現關系
    • 因為接口中的方法都是抽象的,必須由子類實現才可以實例化。可以單實現,也可以多實現;還可以在繼承一個類的同時實現多個接口。((class) extends (class) implements (interface1,interface2…)
  • 接口與接口之間是繼承關系:一個接口可以繼承另一個接口,並添加新的屬性和抽象方法,並且接口可以多繼承。((interface) extends (interface1,interface2…)

抽象類和接口的區別

  • 成員區別

    ​ 抽象類 變量常量;有構造方法;有抽象方法,也有非抽象方法
    ​ 接口 常量;抽象方法

  • 關系區別

    ​ 類與類 繼承,單繼承
    ​ 類與接口 實現,可以單實現,也可以多實現
    ​ 接口與接口 繼承,單繼承,多繼承

  • 設計理念區別
    抽象類 對類抽象,包括屬性、行為
    接口 對行為抽象,主要是行為

    抽象類是對事物的抽象,而接口類是對行為的抽象。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM