接口和抽象類(lèi)的區(qū)別

接口

定義:接口就是一種公共的規(guī)范標(biāo)準(zhǔn)待侵,只要符合規(guī)范捡鱼,大家可以通用爹脾,意義在于制定規(guī)范和做功能的拓展

特點(diǎn)

  • 接口使用關(guān)鍵字interface 修飾
  • 類(lèi)實(shí)現(xiàn)接口用implements表示
  • 接口不能實(shí)例化
  • 實(shí)現(xiàn)接口必須實(shí)現(xiàn)接口中的所有抽象方法救氯,除非這個(gè)類(lèi)是抽象類(lèi)

成員特點(diǎn)

  • 成員變量 :只能是常量
  • 構(gòu)造方法: 沒(méi)有
  • 成員方法:只能是抽象方法
    JDK8以后接口又新加了一些新方法
  • 默認(rèn)方法 為了解決接口升級(jí)問(wèn)題
public default void show3() { 
}

默認(rèn)方法不是抽象方法,所以不強(qiáng)制被重寫(xiě)不恭。但是可以被重寫(xiě)叶雹,重寫(xiě)的時(shí)候去掉default關(guān)鍵字
public可以省略,default不能省略
如果實(shí)現(xiàn)了多個(gè)接口换吧,多個(gè)接口中存在相同的方法聲明折晦,子類(lèi)就必須對(duì)該方法進(jìn)行重寫(xiě)

  • 靜態(tài)方法
public static void show() {
}

靜態(tài)方法只能通過(guò)接口名調(diào)用,不能通過(guò)實(shí)現(xiàn)類(lèi)名或者對(duì)象名調(diào)用
public可以省略沾瓦,static不能省略

  • 私有方法
    產(chǎn)生原因
    Java 9中新增了帶方法體的私有方法满着,這其實(shí)在Java 8中就埋下了伏筆:Java 8允許在接口中定義帶方法體的默認(rèn)方法和靜態(tài)方法。這樣可能就會(huì)引發(fā)一個(gè)問(wèn)題:當(dāng)兩個(gè)默認(rèn)方法或者靜態(tài)方法中包含一段相同的代碼實(shí)現(xiàn)時(shí)贯莺,程序必然考慮將這段實(shí)現(xiàn)代碼抽取成一個(gè)共性方法风喇,而這個(gè)共性方法是不需要讓別人使用的,因此用私有給隱藏起來(lái)乖篷,這就是Java 9增加私有方法的必然性
private static void method() {  //static可以省略
}

默認(rèn)方法可以調(diào)用私有的靜態(tài)方法和非靜態(tài)方法
靜態(tài)方法只能調(diào)用私有的靜態(tài)方法

抽象類(lèi)

概述

抽象類(lèi)的出現(xiàn)响驴,是因?yàn)樵谧鲎宇?lèi)共性?xún)?nèi)容抽取的時(shí)候透且,發(fā)現(xiàn)有些內(nèi)容在父類(lèi)中并沒(méi)有具體的實(shí)現(xiàn)撕蔼,就需要無(wú)方法體的抽象方法
特點(diǎn)

  • 抽象類(lèi)中不一定有抽象方法豁鲤,由抽象方法的類(lèi)一定是抽象類(lèi)
  • 抽象類(lèi)不能實(shí)例化(關(guān)鍵字為abstract)
  • 抽象類(lèi)可以有構(gòu)造方法
  • 抽象類(lèi)的子類(lèi) 要么重寫(xiě)抽象類(lèi)中的所有方法,要么是抽象類(lèi)

相同點(diǎn)

  • 都不能被實(shí)例化
  • 接口的實(shí)現(xiàn)類(lèi)或抽象類(lèi)的子類(lèi)都只有實(shí)現(xiàn)了接口或抽象類(lèi)中的方法后才能實(shí)例化鲸沮。

不同點(diǎn)

  • 接口只有定義琳骡,不能有方法的實(shí)現(xiàn),java 1.8中可以定義default方法體讼溺,而抽象類(lèi)可以有定義與實(shí)現(xiàn)楣号,方法可在抽象類(lèi)中實(shí)現(xiàn)。
  • 實(shí)現(xiàn)接口的關(guān)鍵字為implements怒坯,繼承抽象類(lèi)的關(guān)鍵字為extends炫狱。一個(gè)類(lèi)可以實(shí)現(xiàn)多個(gè)接口,但一個(gè)類(lèi)只能繼承一個(gè)抽象類(lèi)剔猿。所以视译,使用接口可以間接地實(shí)現(xiàn)多重繼承。
  • 接口強(qiáng)調(diào)特定功能的實(shí)現(xiàn)归敬,而抽象類(lèi)強(qiáng)調(diào)所屬關(guān)系酷含。
  • 接口成員變量默認(rèn)為public static final,必須賦初值汪茧,不能被修改椅亚;其所有的成員方法都是public、abstract的舱污。抽象類(lèi)中成員變量默認(rèn)default呀舔,可在子類(lèi)中被重新定義,也可被重新賦值扩灯;抽象方法被abstract修飾别威,不能被private、static驴剔、synchronized和native等修飾省古,必須以分號(hào)結(jié)尾,不帶花括號(hào)丧失。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末豺妓,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子布讹,更是在濱河造成了極大的恐慌琳拭,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件描验,死亡現(xiàn)場(chǎng)離奇詭異白嘁,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)膘流,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門(mén)絮缅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)鲁沥,“玉大人,你說(shuō)我怎么就攤上這事耕魄』。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,133評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵吸奴,是天一觀的道長(zhǎng)允扇。 經(jīng)常有香客問(wèn)我,道長(zhǎng)则奥,這世上最難降的妖魔是什么考润? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,532評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮读处,結(jié)果婚禮上额划,老公的妹妹穿的比我還像新娘。我一直安慰自己档泽,他們只是感情好俊戳,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,585評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著馆匿,像睡著了一般抑胎。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上渐北,一...
    開(kāi)封第一講書(shū)人閱讀 51,462評(píng)論 1 302
  • 那天阿逃,我揣著相機(jī)與錄音,去河邊找鬼赃蛛。 笑死恃锉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的呕臂。 我是一名探鬼主播破托,決...
    沈念sama閱讀 40,262評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼歧蒋!你這毒婦竟也來(lái)了土砂?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,153評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤谜洽,失蹤者是張志新(化名)和其女友劉穎萝映,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體阐虚,經(jīng)...
    沈念sama閱讀 45,587評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡序臂,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,792評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了实束。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奥秆。...
    茶點(diǎn)故事閱讀 39,919評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡逊彭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出吭练,到底是詐尸還是另有隱情诫龙,我是刑警寧澤析显,帶...
    沈念sama閱讀 35,635評(píng)論 5 345
  • 正文 年R本政府宣布鲫咽,位于F島的核電站,受9級(jí)特大地震影響谷异,放射性物質(zhì)發(fā)生泄漏分尸。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,237評(píng)論 3 329
  • 文/蒙蒙 一歹嘹、第九天 我趴在偏房一處隱蔽的房頂上張望箩绍。 院中可真熱鬧,春花似錦尺上、人聲如沸材蛛。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,855評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)卑吭。三九已至,卻和暖如春马绝,著一層夾襖步出監(jiān)牢的瞬間豆赏,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,983評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工富稻, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留掷邦,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,048評(píng)論 3 370
  • 正文 我出身青樓椭赋,卻偏偏與公主長(zhǎng)得像抚岗,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子哪怔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,864評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容