教育行業(yè)A股IPO第一股(股票代碼 003032)

全國(guó)咨詢/投訴熱線:400-618-4000

Java中怎樣定義和聲明接口?

更新時(shí)間:2021年08月31日17時(shí)14分 來(lái)源:傳智教育 瀏覽次數(shù):

好口碑IT培訓(xùn)

如果一個(gè)抽象類(lèi)的所有方法都是抽象的,則可以定義這個(gè)類(lèi)為接口。接口是Java中最重要的概念之一,接口是一種特殊的類(lèi),由全局常量和公共的抽象方法組成,不能包含普通方法。

在JDK8之前接口是由全局常量和抽象方法組成的,且接口中的抽象方法不允許有方法體JDK8對(duì)接口進(jìn)行了重新定義,接口中除了抽象方法外,還可以有默認(rèn)方法和靜態(tài)方法(也稱類(lèi)方法),默認(rèn)方法使用defaut修飾,靜態(tài)方法使用static修飾,且這兩種方法都允許有方法體。

接口使用interface關(guān)鍵字聲明,語(yǔ)法格式如下:

public interface接口名extends接口1,接口2...

public static final 數(shù)據(jù)類(lèi)型 常量名=常量值:

public default 返回值類(lèi)型 抽象方法名 (參數(shù)列表);

public abstract 返回值類(lèi)型方法名(參數(shù)列表) {

//默認(rèn)方法的方法體

}
public abstract 返回值類(lèi)型 抽象方法名(參數(shù)列表); {

默認(rèn)方法的方法體

}

public abstract 返回值類(lèi)型 抽象方法名(參數(shù)列表); {
//方法的方法體

   }

}

在上述語(yǔ)法中,“extends接口1,接口2...”表示一個(gè)接口可以有多個(gè)父接口,父接口之間用逗號(hào)分隔。Java使用接口的目的是克服單繼承的限制,因?yàn)橐粋€(gè)類(lèi)只能有一個(gè)父類(lèi),而一個(gè)接口可以同時(shí)繼承多個(gè)父接口。接口中的變量默認(rèn)使用“public static final”進(jìn)行修飾,即全局常量。接口中定義的方法默認(rèn)使用“publicabstract"進(jìn)行修飾,即抽象方法。如果接口聲明為publie,則接口中的變量和方法全部為public。

注意:

在很多Java程序中,經(jīng)??吹骄帉?xiě)接口中的方法時(shí)省略了publie,有很多讀者認(rèn)為它的訪問(wèn)權(quán)限是default,這實(shí)際上是錯(cuò)誤的。不管寫(xiě)不寫(xiě)訪問(wèn)權(quán)限,接口中方法的訪問(wèn)權(quán)限永遠(yuǎn)是public.與此類(lèi)似,在接口中定義常量時(shí),可以省略前面的"pubic static final”"",此時(shí),接口會(huì)默認(rèn)為常量添加“pubic satic fnal"。



猜你喜歡:

接口和抽象類(lèi)有什么區(qū)別?【java面試題】

接口隔離原則介紹【軟件設(shè)計(jì)原則】

Shiro教程:Realm接口實(shí)現(xiàn)方式

傳智教育java開(kāi)發(fā)培訓(xùn)

0 分享到:
和我們?cè)诰€交談!