java第四章介面
介面(interface)
語法:修飾符 interface 介面名 extends 父介面1,父介面2....{
//常量定義 //方法定義}
class 類名 extends 父類名 implements 介面1 ,介面2..{
//類成員 }
介面的詳細說明:
在生活中,介面是一套規範,滿足這個規範的裝置就可以將他們組裝到一起,也是可以實現具體複雜事物但有規律的功能(類似插座)
1.介面的命名規則與類相同,修飾符是public,介面會在整個專案中可見,省略修飾符該介面只在包中可見
2.介面中的屬性預設(自動用public static final修飾不寫自動新增,介面中的屬性都為全域性靜態常量,必須在定義時賦初始值[不可更改])
3.介面中的所有方法都為抽象方法,介面中的方法自動用public abstract 修飾,即介面中只有全域性抽象方法,所有方法都得用public修飾
4.和抽象類一樣,介面也不能例項化,介面中不能有構造方法
5.介面之間可通過extends實現繼承關係,一個介面可繼承多個介面,但介面不能繼承類
6.介面的實現類必須實現介面的全部(抽象)方法,否則必須定義為抽象類
7.一個類只能有一個直接父類,但可以通過implements實現多個介面,當類在繼承父類的同時又實現了多個介面時extends關鍵字必須位於implements前面(即實現繼承又實現介面)先繼承後實現介面[java是單繼承多實現]
介面的好處:
不僅妳補了java只支援單繼承的缺點,還利於程式碼的擴充套件和維護
介面於抽象類的區別:
抽象類利於程式碼的複用,介面利於程式碼擴充套件和維護
java.lang.Object 6個方法:
equals()方法(比較字串是否相等)
toString()方法(輸出一個物件的地址)
clone()方法(複製一個物件)
finalize()方法(讓垃圾回收器釋放記憶體的時候)
wait()方法(進入等待狀態)
hashCode()方法(按照一些規則把物件變為數值)
總結:
一個類要實現介面的功能,要實現介面的全部方法所以介面中不能有構造方法
介面中方法的方法體內有0條程式碼 抽象類