一、介面的組成
1.常量:public static final
2.抽象方法:public abstract
3.默認方法(java 8):public default,多用于介面后期加入新的需求,需要定義新的方法時使用,避免了繼承此介面的實作類、子介面的重寫操作
介面中默認方法的定義格式
public default 回傳值型別 方法名(引數串列){}
范例:public default void show(){}
注意事項:
-
默認方法不是抽象方法,所以不強制重寫;但是可以被重寫,重寫的時候要去掉default關鍵字
-
public 在書寫時可以省略,default不能
4.靜態方法(java 9):
介面中靜態方法的定義格式:
public static 回傳值型別 方法名(引數串列){}
范例:public static void show(){}
注意事項:
1.靜態方法只能通過介面名呼叫,不能通過實作類名或者物件名呼叫(這是為了防止多繼承的情況下編譯報錯的情況)
2.public 在書寫時可以省略,static不能
5.私有方法(java 9):
必然性:
Java9中新增了帶方法體的私有方法,這其實在Java8中就埋下了伏筆:Java8允許在介面中定義帶方法體的默認方法和靜態方法,這樣就可能會引發一個問題:當兩個默認方法或靜態方法中包含同一段代碼時,程式必然考慮將這段代碼抽取成一個共性方法,而這個共性方法是不需要讓別人使用的,因此用私有隱藏起來,
介面中私有方法的定義格式:
格式一:private 回傳值型別 方法名(引數串列){}
范例:private void show(){}
格式二:private static 回傳值型別 方法名(引數串列){}
范例:private static void show(){}
注意事項:
1.默認方法可以呼叫私有的靜態方法和非靜態方法
2.靜態方法只能呼叫私有的靜態方法
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/463510.html
標籤:其他
