接口
是Java語言中一種引用類型,是方法的集合,如果說類的內(nèi)部封裝了成員變量、構(gòu)造方法和成員方法,那么接口的內(nèi)部主要就是封裝了方法,包含抽象方法(JDK 7及以前),默認方法和靜態(tài)方法(JDK 8),私有方法(JDK 9)。
接口的定義:
它與定義類方式相似,但是使用interface關(guān)鍵字。它也會被編譯成.class文件,但一定要明確它并不是類,而是另外一種引用數(shù)據(jù)類型。
引用數(shù)據(jù)類型:數(shù)組,類,接口。
接口的使用:
它不能創(chuàng)建對象,但是可以被實現(xiàn)(implements,類似于被繼承)。一個實現(xiàn)接口的類(可以看做是接口的子類),需要實現(xiàn)接口中所有的抽象方法,創(chuàng)建該類對象,就可以調(diào)用方法了,否則它必須是一個抽象類。
定義格式:
public?interface?接口名稱?{????//?抽象方法????//?默認方法????//?靜態(tài)方法????//?私有方法}
final:關(guān)鍵字,表示終態(tài)的意思,如果修飾變量,該變量就變成常量
常量:使用public static final
接口中的常量有默認修飾符:public static final可以省略
接口的實現(xiàn)
類與接口的關(guān)系為實現(xiàn)關(guān)系,即類實現(xiàn)接口,該類可以稱為接口的實現(xiàn)類,也可以稱為接口的子類。實現(xiàn)的動作類似繼承,格式相仿,只是關(guān)鍵字不同,實現(xiàn)使用implements關(guān)鍵字。
非抽象子類實現(xiàn)接口:
必須重寫接口中所有抽象方法。
繼承了接口的默認方法,即可以直接調(diào)用,也可以重寫。
class?類名?implements?接口名?{????//?重寫接口中抽象方法【必須】??????//?重寫接口中默認方法【可選】}
接口中定義抽象方法
抽象方法:沒有方法體的方法,并且使用abstract關(guān)鍵字修飾
默認修飾符:public abstract可以省略
public abstract 返回值類型 方法名(形參);
接口中定義默認方法--有方法體的方法
默認方法:使用default修飾,不可省略,供子類調(diào)用或者子類重寫。
public?default?返回值類型?方法名(形參){????方法體}
接口中靜態(tài)方法的定義
靜態(tài)方法:使用static修飾,供接口直接調(diào)用。
public?static?返回值類型?方法名(形參){???方法體}
接口中定義私有方法
私有方法:使用private修飾,供接口中的默認方法或者靜態(tài)方法調(diào)用
私有非靜態(tài)方法
private?返回值類型?方法名(形參){???方法體}私有靜態(tài)方法Private?static?返回值類型?方法名(形參){???方法體}
接口的特點
接口就是一種引用數(shù)據(jù)類型
接口中只能定義常量和方法(抽象方法,靜態(tài)方法,默認方法,私有方法)
接口不能定義成員變量和構(gòu)造方法
接口不能創(chuàng)建對象,只能通過其實現(xiàn)類來使用
以上就是北大青鳥長沙麓谷校區(qū)Java培訓(xùn)機構(gòu)的小編針對“Java接口講解視頻教程,入門基礎(chǔ)學(xué)習(xí)”的內(nèi)容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。