介面詳解
阿新 • • 發佈:2021-06-23
介面
基本介紹
- 介面就是給出一些沒有實現的方法,封裝到一起,到某個類需要使用的時候,再根據具體情況把這些方法寫出來
- 語法
interface 介面名{
屬性
抽象方法
}
class 類名 implementd 介面{
自己屬性;
自己方法;
必須實現介面的抽象方法
}
- 介面是更加抽象的抽象的類,抽象類裡的方法可以有方法體,接口裡的所有方法都沒有方法體
- 介面體現了程式設計的多型和高內聚低耦合的設計思想
- jdk8以後介面類可以有靜態方法,預設方法,也就是說介面中可以有方法的具體實現
注意事項
- 介面不能被例項化
- 介面中所有方法是public方法,介面中抽象方法,可以不用abstract修飾
- 一個普通類實現介面就必須將該介面的所有方法都實現
- 抽象類實現介面,可以不用實現介面的方法
- 一個類同時可以實現多個介面
- 介面中的屬性,只能是final的,而且是public static final 修飾符
- 介面中的屬性訪問方式: 介面名.屬性名
- 介面不能繼承其他的類,但是可以繼承多個別的介面
- 介面的修飾符只能是public 和預設,和類的修飾符是一樣的
實現介面與繼承類
- 當子類繼承了父類,就自動的擁有父類的功能
- 如果子類需要擴充套件功能,可以通過實現介面的方式擴充套件
- 實現介面是對Java單繼承機制的一種補充
- 繼承的價值主要在於解決程式碼的複用性和可維護性
- 介面的價值主要在於設計好各種規範,讓其他類去實現這些方法
- 介面比繼承更加靈活
- 介面在一定程度上實現解耦,即介面規範性+動態繫結機制
介面的多型特性
- 父類引用指向子類物件