java中的接口

定義

接口就是一種公共的規(guī)范標準,只要符合規(guī)范標準,就可以大家通用

代碼中,接口是多個類的公共規(guī)范跌捆,是一種引用類型徽职,其中最重要的就是其中的抽象方法象颖;

使用

格式:public interface 接口名稱{}

編譯生成的字節(jié)碼文件仍然是:.java --> .class

包含的內容:

JDK7: 1、常量 2姆钉、抽象方法

JDK8新增:3说订、默認方法 4、靜態(tài)方法

JDK9新增:5潮瓶、私有方法

常量

定義格式

接口中也可以定義成員變量陶冷,使用 pulic static final 關鍵字修飾,從效果來看毯辅,這就是接口的常量(可以省略這三個關鍵字)

格式:[public] [static] [final] 數(shù)據(jù)類型 常量名稱 = 數(shù)據(jù)值;

注意:

1埂伦、接口中的常量,可以省略這三個關鍵字思恐,不寫也這樣

2沾谜、接口中的常量膊毁,必須進行賦值,不能不賦值

3基跑、接口中的常量名稱婚温,使用完全大寫的字母,用下劃線進行分隔(推薦)

抽象方法:

定義格式

[public] [abstract] 返回值類型 方法名稱(參數(shù)列表);

注意:

1媳否、接口當中的抽象方法栅螟,修飾符必須是兩個固定的關鍵字:public abstract

2、這兩個關鍵字修飾符篱竭,可以選擇性的省略

3力图、方法的三要素可以隨意定義;

使用步驟

1掺逼、接口不能直接使用搪哪,必須有一個實現(xiàn)類來實現(xiàn)該接口

格式:public class 實現(xiàn)類名稱 implements 接口名稱 {}

2、接口的實現(xiàn)類必須覆蓋重寫(實現(xiàn))接口中的所有抽象方法坪圾;

3晓折、創(chuàng)建實現(xiàn)類的對象進行使用;

注意事項:

如果實現(xiàn)類并沒有覆蓋重寫接口中所有的抽象方法兽泄,那么這個實現(xiàn)類就必須是抽象類

默認方法

定義格式

格式:[public] default 返回值類型 方法名稱(參數(shù)列表){? //方法體 }?

目的:解決接口升級的問題

使用步驟

1漓概、接口的默認方法可以通過接口的實現(xiàn)對象直接調用(繼承)

2、接口的默認方法也可以被接口實現(xiàn)類進行覆蓋重寫

靜態(tài)方法

定義格式

格式:[public] static 返回值類型 方法名稱(參數(shù)列表) { //方法體}?

使用步驟

通過接口名稱直接調用其中的靜態(tài)方法

格式:接口名稱.靜態(tài)方法名稱(參數(shù)列表);

注意:

1病梢、不能通過接口實現(xiàn)類的對象來調用接口當中的靜態(tài)方法

2胃珍、不能通過接口實現(xiàn)類對接口當中的靜態(tài)方法進行覆蓋重寫

私有方法

定義格式

1、普通私有方法:解決多個默認方法之間重復代碼問題

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

2蜓陌、靜態(tài)私有方法:解決多個靜態(tài)方法之間重復代碼問題

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

使用步驟

接口中直接調用(只能在接口中使用)

使用注意事項

1觅彰、接口沒有靜態(tài)代碼塊和構造方法

2、一個類的直接父類有且只有一個钮热,但是一個類可以同時實現(xiàn)多個接口

? ? 格式:public class MyInterfaceImpl implements?MyInterfaceA,?MyInterfaceB{}

3填抬、如果實現(xiàn)類所實現(xiàn)的多個接口中,存在重復的抽象方法隧期,那么只需要覆蓋重寫一次即可

4飒责、如果實現(xiàn)類沒有覆蓋重寫所有接口當中的所有抽象方法,那么實現(xiàn)類就必須是一個抽象類

5仆潮、如果實現(xiàn)類所實現(xiàn)的多個接口中宏蛉,存在重復的默認方法,那么實現(xiàn)類一定要對沖突的默認方法進行覆蓋重寫

6性置、一個類如果直接父類中的方法和接口中的默認方法產生了沖突拾并,優(yōu)先用父類中的方法

7、如果實現(xiàn)類所實現(xiàn)的多個接口中,存在重復的靜態(tài)方法嗅义,因為靜態(tài)方法調用格式為:接口名稱.靜態(tài)方法名稱个榕,因而沒有影響

接口、類之間的繼承實現(xiàn)關系

1芥喇、類與類之間是單繼承的西采,直接父類只有一個

2、類與接口之間是多實現(xiàn)的继控,一個類可以實現(xiàn)多個接口(要覆蓋重寫沖突)

3械馆、接口與接口之間是多繼承的

注意:

1、多個父接口當中的抽象方法如果重復武通,沒關系

2霹崎、多個父接口當中的默認方法如果重復,子接口必須進行默認方法的覆蓋重寫冶忱,而且?guī)е鴇efault關鍵字

3尾菇、多接口繼承時,要避免出現(xiàn)抽象方法名稱相同囚枪、參數(shù)列表相同派诬、返回值類型不同的的方法,會出現(xiàn)方法定義重復链沼。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末默赂,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子括勺,更是在濱河造成了極大的恐慌缆八,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,816評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疾捍,死亡現(xiàn)場離奇詭異奈辰,居然都是意外死亡,警方通過查閱死者的電腦和手機乱豆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評論 3 385
  • 文/潘曉璐 我一進店門奖恰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人咙鞍,你說我怎么就攤上這事房官。” “怎么了续滋?”我有些...
    開封第一講書人閱讀 158,300評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長孵奶。 經常有香客問我疲酌,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,780評論 1 285
  • 正文 為了忘掉前任朗恳,我火速辦了婚禮湿颅,結果婚禮上,老公的妹妹穿的比我還像新娘粥诫。我一直安慰自己油航,他們只是感情好,可當我...
    茶點故事閱讀 65,890評論 6 385
  • 文/花漫 我一把揭開白布怀浆。 她就那樣靜靜地躺著谊囚,像睡著了一般。 火紅的嫁衣襯著肌膚如雪执赡。 梳的紋絲不亂的頭發(fā)上镰踏,一...
    開封第一講書人閱讀 50,084評論 1 291
  • 那天,我揣著相機與錄音沙合,去河邊找鬼奠伪。 笑死,一個胖子當著我的面吹牛首懈,可吹牛的內容都是我干的绊率。 我是一名探鬼主播,決...
    沈念sama閱讀 39,151評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼究履,長吁一口氣:“原來是場噩夢啊……” “哼即舌!你這毒婦竟也來了?” 一聲冷哼從身側響起挎袜,我...
    開封第一講書人閱讀 37,912評論 0 268
  • 序言:老撾萬榮一對情侶失蹤顽聂,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后盯仪,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體紊搪,經...
    沈念sama閱讀 44,355評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,666評論 2 327
  • 正文 我和宋清朗相戀三年全景,在試婚紗的時候發(fā)現(xiàn)自己被綠了耀石。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,809評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡爸黄,死狀恐怖滞伟,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情炕贵,我是刑警寧澤梆奈,帶...
    沈念sama閱讀 34,504評論 4 334
  • 正文 年R本政府宣布,位于F島的核電站称开,受9級特大地震影響亩钟,放射性物質發(fā)生泄漏乓梨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 40,150評論 3 317
  • 文/蒙蒙 一清酥、第九天 我趴在偏房一處隱蔽的房頂上張望扶镀。 院中可真熱鬧,春花似錦焰轻、人聲如沸臭觉。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽蝠筑。三九已至,卻和暖如春荸频,著一層夾襖步出監(jiān)牢的瞬間菱肖,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評論 1 267
  • 我被黑心中介騙來泰國打工旭从, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留稳强,地道東北人。 一個月前我還...
    沈念sama閱讀 46,628評論 2 362
  • 正文 我出身青樓和悦,卻偏偏與公主長得像退疫,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子鸽素,可洞房花燭夜當晚...
    茶點故事閱讀 43,724評論 2 351

推薦閱讀更多精彩內容

  • 一褒繁、接口(Interface) 在JAVA編程語言中是一個抽象類型,是抽象方法的集合馍忽,接口通常以interface...
    在遠方的你等我閱讀 1,427評論 0 2
  • 1棒坏、概述 接口表示的是功能的集合,可看做是一種數(shù)據(jù)類型遭笋,接口中全是抽象方法坝冕,沒有普通方法,是比抽象更抽象的“...
    叢鵬閱讀 338評論 0 0
  • 一瓦呼、抽象類 1喂窟、抽象方法 抽象方法只有聲明,而沒有具體的實現(xiàn)央串。也就是說沒有{}磨澡。抽象方法的聲明格式為:abstra...
    銹色的柵欄閱讀 400評論 0 0
  • 在前段時間整理筆記的時候 就整理到了有關于接口的內容 我覺得還挺重要的 就想著發(fā)一下 希望大家可以看看 如果有什么...
    Lonelyice閱讀 256評論 0 0
  • 目錄結構 ?1. 接口的聲明?2. 接口體中包含常量定義和方法定義兩部分?3. 接口多繼承?4. 接口變量使用接口...
    八匹馬zbj閱讀 338評論 0 0