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