抽象

父類(lèi)中至少有一個(gè)抽象的方法

1抽象方法需要有abstract關(guān)鍵字修飾究孕,關(guān)鍵字可以在public關(guān)鍵字的后面奠旺,也可以在public的前面

2抽象類(lèi)也需要有abstract關(guān)鍵字修飾蜀肘,關(guān)鍵字可以在public關(guān)鍵字的后面,也可以在public的前面

3一個(gè)抽象類(lèi)中至少有一個(gè)抽象方法

4抽象方法 只需要聲明方法,不能有方法體
父類(lèi)抽象類(lèi):

public abstract class Door {
/public void open(){
System.out.println("門(mén)的作用之一是開(kāi)門(mén)");
}
public void close(){
System.out.println("門(mén)的作用之二是關(guān)門(mén)");
}
/

public abstract void open();
public abstract void close();

}

子類(lèi)一 鍵盤(pán)鎖門(mén):

public class KeypadDoor extends Door{
public void open(){
System.out.println("按鍵盤(pán)輸入密碼開(kāi)門(mén)");
}
public void close(){
System.out.println("拉上即可自動(dòng)鎖門(mén)");
}
}
子類(lèi)二 電動(dòng)門(mén):

public class PowerDoor extends Door{
public void open(){
System.out.println("按遙控器開(kāi)門(mén)");
}
public void close(){
System.out.println("按遙控器關(guān)門(mén)");
}
}
測(cè)試并調(diào)用

public class Demo01 {
public static void main(String[] args) {
KeypadDoor keypadDoor=new KeypadDoor();
keypadDoor.open();
keypadDoor.close();

    PowerDoor powerDoor=new PowerDoor();
    powerDoor.open();
    powerDoor.close();
}

}
匿名類(lèi):
Door door=new Door(){
@Override
public void open(){
System.out.println("臨時(shí)實(shí)現(xiàn)的開(kāi)門(mén)方法");

        }
        @Override
        public void close(){
            System.out.println("臨時(shí)實(shí)現(xiàn)的關(guān)門(mén)方法");
        }
    };
    door.open();
    door.close();

接口
1關(guān)鍵字interface仔沿,實(shí)現(xiàn)類(lèi)的關(guān)鍵字 implements接口的名字

2接口中寫(xiě)方法的聲明扣蜻,沒(méi)有方法體

3接口方法默認(rèn)權(quán)限全部是public逆巍,因此,public可省略

4實(shí)現(xiàn)類(lèi)中需要全部實(shí)現(xiàn)接口中出現(xiàn)的未實(shí)現(xiàn)的方法

案例:

public interface Door {
//方法的聲明(簽名)
public void open();

public void close();

}
實(shí)現(xiàn)類(lèi):

public class KeypadDoor implements Door{
@Override
public void open() {
System.out.println("鍵盤(pán)門(mén)打開(kāi)");
}

@Override
public void close() {
    System.out.println("鍵盤(pán)門(mén)關(guān)閉");
}

}
實(shí)現(xiàn)類(lèi):

public class PowerDoor implements Door{
@Override
public void open() {
System.out.println("電動(dòng)門(mén)打開(kāi)");
}

@Override
public void close() {
    System.out.println("電動(dòng)門(mén)關(guān)閉");
}

}
接口沒(méi)有辦法直接new莽使,創(chuàng)建對(duì)象锐极,但是可以臨時(shí)創(chuàng)建一個(gè)匿名的實(shí)現(xiàn)類(lèi)

Door door=new Door(){
@Override
public void open(){
System.out.println("臨時(shí)實(shí)現(xiàn)的開(kāi)門(mén)方法");

        }
        @Override
        public void close(){
            System.out.println("臨時(shí)實(shí)現(xiàn)的關(guān)門(mén)方法");
        }
    };
    door.open();
    door.close();

接口中的靜態(tài)常量

public interface Door {
//靜態(tài)常量
String des="是個(gè)門(mén),注意安全";
}
接口中的默認(rèn)方法和靜態(tài)方法

public interface Door {
//靜態(tài)常量
String des="是個(gè)門(mén)芳肌,注意安全";
//方法的聲明(簽名)
public void open();

public void close();

public default void test01(){
    System.out.println("接口中的默認(rèn)的測(cè)試方法");
}

public static void test02(){
    System.out.println("接口中的靜態(tài)方法");
}

}
public class Demo02 {
public static void main(String[] args) {
keypadDoor.test01();
//keypadDoor.test02();
//Door.test01();
Door.test02();
}
}
接口中默認(rèn)的方法只能通過(guò)實(shí)現(xiàn)類(lèi)的對(duì)象keypadDoor.test01();調(diào)用

接口中的靜態(tài)方法只能通過(guò)接口名.方法 Door.test();調(diào)用
接口可以多繼承

演示:

public interface GrandFather {
public void diaoyu();
}
public interface Son {
public void Player();
}
public interface Father {
public void chouyan();
}
多繼承:一個(gè)接口可以同時(shí)繼承多個(gè)接口

public interface Temp extends GrandFather,Father,Son{

}
子類(lèi)必須實(shí)現(xiàn)抽象的父類(lèi)中或抽象的祖先類(lèi)中累計(jì)的未實(shí)現(xiàn)的抽象方法

祖先類(lèi)中的抽象方法灵再,如果在抽象的父類(lèi)中實(shí)現(xiàn)過(guò)肋层,子類(lèi)可以選擇實(shí)現(xiàn),也可以選擇不實(shí)現(xiàn)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末翎迁,一起剝皮案震驚了整個(gè)濱河市栋猖,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌汪榔,老刑警劉巖蒲拉,帶你破解...
    沈念sama閱讀 211,817評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異痴腌,居然都是意外死亡雌团,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)士聪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)锦援,“玉大人,你說(shuō)我怎么就攤上這事戚嗅∮晏危” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,354評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵懦胞,是天一觀(guān)的道長(zhǎng)替久。 經(jīng)常有香客問(wèn)我,道長(zhǎng)躏尉,這世上最難降的妖魔是什么蚯根? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,498評(píng)論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮胀糜,結(jié)果婚禮上颅拦,老公的妹妹穿的比我還像新娘。我一直安慰自己教藻,他們只是感情好距帅,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著括堤,像睡著了一般碌秸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上悄窃,一...
    開(kāi)封第一講書(shū)人閱讀 49,829評(píng)論 1 290
  • 那天讥电,我揣著相機(jī)與錄音,去河邊找鬼轧抗。 笑死恩敌,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的横媚。 我是一名探鬼主播纠炮,決...
    沈念sama閱讀 38,979評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼月趟,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了恢口?” 一聲冷哼從身側(cè)響起狮斗,我...
    開(kāi)封第一講書(shū)人閱讀 37,722評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎弧蝇,沒(méi)想到半個(gè)月后碳褒,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,189評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡看疗,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評(píng)論 2 327
  • 正文 我和宋清朗相戀三年沙峻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片两芳。...
    茶點(diǎn)故事閱讀 38,654評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡摔寨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出怖辆,到底是詐尸還是另有隱情是复,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布竖螃,位于F島的核電站淑廊,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏特咆。R本人自食惡果不足惜季惩,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評(píng)論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望腻格。 院中可真熱鬧画拾,春花似錦、人聲如沸菜职。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,762評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)酬核。三九已至蜜另,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間愁茁,已是汗流浹背蚕钦。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,993評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工亭病, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鹅很,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,382評(píng)論 2 360
  • 正文 我出身青樓罪帖,卻偏偏與公主長(zhǎng)得像促煮,于是被迫代替她去往敵國(guó)和親邮屁。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評(píng)論 2 349

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

  • 詳解Java抽象類(lèi)和接口 抽象類(lèi) 使用了關(guān)鍵字abstract聲明的類(lèi)叫作“抽象類(lèi)”菠齿。如果一個(gè)類(lèi)里包含了一個(gè)或多個(gè)...
    測(cè)試開(kāi)發(fā)Kevin閱讀 521評(píng)論 0 8
  • 第一佑吝,抽象類(lèi): 我們都知道,在面向?qū)ο蟮念I(lǐng)域中绳匀,一切都是一個(gè)對(duì)象芋忿,所有的對(duì)象都是用類(lèi)來(lái)描述的,但不是所有的類(lèi)都是用...
    墨雨軒夏閱讀 651評(píng)論 0 6
  • 1 抽象類(lèi)和接口簡(jiǎn)介1.1 抽象類(lèi)1.1.1 一個(gè)小案例我們先來(lái)看這樣一個(gè)案例:世界上有許許多多不同種類(lèi)的動(dòng)物疾棵,每...
    走丟的小英俊閱讀 675評(píng)論 3 2
  • abstract class和interface是Java語(yǔ)言中對(duì)于抽象類(lèi)定義進(jìn)行支持的兩種機(jī)制戈钢,正是由于這兩種機(jī)...
    shenshizhong閱讀 2,970評(píng)論 4 23
  • 3 抽象類(lèi)和接口 3.1 抽象類(lèi) 3.1.1 抽象類(lèi)是什么 [圖片上傳失敗...(image-fea46a-159...
    Hao_38b9閱讀 210評(píng)論 0 0