public interface 接口名稱 { // 抽象方法 // 默認方法 // 靜態方法 // 私有方法 }
final: 關鍵字,表示終態的意思,如果修飾變量,該變量就變成常量
常量:使用public static final
接口中的常量有默認修飾符:public static final 可以省略
接口的實現
非抽象子類實現接口:
-
必須重寫接口中所有抽象方法。
-
繼承了接口的默認方法,即可以直接調用,也可以重寫。
class 類名 implements 接口名 { // 重寫接口中抽象方法【必須】 // 重寫接口中默認方法【可選】 }
接口中定義抽象方法
抽象方法:沒有方法體的方法,並且使用abstract關鍵字修飾
默認修飾符:public abstract 可以省略
public abstract 返回值類型 方法名(形參);
接口中定義默認方法--有方法體的方法
public default 返回值類型 方法名(形參){ 方法體 }
接口中靜態方法的定義
靜態方法:使用 static
修飾,供接口直接調用。
public static 返回值類型 方法名(形參){ 方法體 }
接口中定義私有方法
私有非靜態方法
private 返回值類型 方法名(形參){ 方法體 }
私有靜態方法
Private static 返回值類型 方法名(形參){ 方法體 }
接口的特點
接口就是一種引用數據類型
接口中只能定義常量和方法(抽象方法,靜態方法,默認方法,私有方法)
接口不能定義成員變量和構造方法
接口不能創建對象,只能通過其實現類來使用