溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

java中接口的定義和使用方法

發(fā)布時(shí)間:2020-06-22 09:46:17 來源:億速云 閱讀:307 作者:Leah 欄目:編程語言

這篇文章運(yùn)用簡單易懂的例子給大家介紹java中接口的定義和使用方法,文章內(nèi)容步步緊湊,希望大家根據(jù)這篇文章可以有所收獲。

定義:接口就是多個(gè)類的共有規(guī)范(里面的抽象方法),是一種引用數(shù)據(jù)類型。

小提示:基本數(shù)據(jù)類型包括數(shù)值型(整數(shù)和浮點(diǎn)數(shù))、字符型、布爾型。

格式:

public interface 接口名稱{
	//接口內(nèi)容
}

備注:接口.java編譯后仍然是接口.class

接口包含的內(nèi)容:

    java 7(1.常量 2.抽象方法)
    java 8(3.默認(rèn)方法 4.靜態(tài)方法)
    java 9(私有方法)

一、常量

常量類似接口的“成員變量”,必須加上public static final三個(gè)關(guān)鍵字修飾。

格式:

public static final 數(shù)據(jù)類型 常量名稱 = 數(shù)據(jù)值;

注意:

1.三個(gè)關(guān)鍵字可以省略;

2.接口常量必須被復(fù)制;

3.接口中常量名稱,使用完全大寫字母,并用下劃線隔開(MY_AGE)。

二、抽象方法

抽象方法的修飾符同樣是固定的兩個(gè)關(guān)鍵字`public abstract`(可以省略任一關(guān)鍵字);

抽象方法接口不能直接使用,必須有一個(gè)實(shí)現(xiàn)類去實(shí)現(xiàn)該接口,實(shí)現(xiàn)類必須覆蓋重寫(實(shí)現(xiàn))接口內(nèi)所有的抽象方法,否則這個(gè)實(shí)現(xiàn)類就成了抽象類(abstract)。

格式:

public class 實(shí)現(xiàn)類名稱 iplements 接口名稱{
	//方法體
}
public abstract 返回值類型 方法名稱(參數(shù)列表);

三、默認(rèn)方法

接口的默認(rèn)方法是用來解決接口升級的問題。

格式:

public default 返回值類型 方法名稱(參數(shù)列表){
	//方法體
}

使用:1、被接口實(shí)現(xiàn)類對象直接調(diào)用;2、可以被接口實(shí)現(xiàn)類進(jìn)行覆蓋重寫。

四、靜態(tài)方法

public static 返回值類型 方法名稱(參數(shù)列表){
	//方法體
}

靜態(tài)方法使用直接是:接口名稱.靜態(tài)方法名(參數(shù)列表)。

五、私有方法

在接口中如果有多個(gè)默認(rèn)方法(default)存在重復(fù)代碼,可以定義一個(gè)共有方法解決,但是這個(gè)共有方法是屬于這多個(gè)默認(rèn)方法使用的,是私有化的不能讓實(shí)現(xiàn)類使用。

1、普通私有方法(默認(rèn)方法default)

private 返回值類型 方法名稱(參數(shù)列表){
	//方法體
}

2、靜態(tài)私有方法(靜態(tài)方法static)

private static 返回值類型 方法名稱(參數(shù)列表){
	//方法體
}

繼承父類并實(shí)現(xiàn)多個(gè)接口:

1、接口不能有靜態(tài)代碼塊;不能有構(gòu)造方法;

2、一個(gè)類只能繼承一個(gè)父類但是可以實(shí)現(xiàn)多個(gè)接口;

格式:

public class MyInterfaceImpl implements MyInterfaceA,MyInterfaceB{
	//覆蓋重寫接口所有的抽象方法
	//也可以重寫接口內(nèi)的默認(rèn)方法
}

3、接口內(nèi)存在兩個(gè)或多個(gè)重名抽象方法時(shí),實(shí)現(xiàn)一次就可以;

4、接口內(nèi)存在兩個(gè)或多個(gè)重名默認(rèn)方法時(shí),需要對這個(gè)默認(rèn)方法進(jìn)行重寫;

5、一個(gè)類直接繼承父類的方法和實(shí)現(xiàn)接口的方法重名時(shí),繼承關(guān)系優(yōu)先于接口實(shí)現(xiàn)。

接口之間的多繼承:

1.類與類時(shí)但繼承;

2.類與接口是多實(shí)現(xiàn);

3.接口與接口之間是多繼承的。

關(guān)于java中接口的定義和使用方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI