java面向?qū)ο蟪绦蛟O計——抽象和接口


# 抽象類:

父類中至少有一個抽象的方法

     1.抽象方法需要有abstract關鍵字修飾柔滔,關鍵字可以再public關鍵字的后面棚蓄,也可以再public的前面秋麸。

    2. 抽象類需要有abstract關鍵字修飾,關鍵字可以再public關鍵字的后面奏甫,也可以再public的前面建峭。

3. 一個抽象類中至少要有一個抽象方法

   4.抽象方法  只需要聲明方法, 不能有方法體

######      **父類抽象類**

```java
public   abstract  class   Door {

   /*public  void  open(){
       System.out.println("門的作用之一是開門");
    }

    public  void close(){
      System.out.println(" 門的作用之二是關門")};*/
    public abstract void open();


    public  abstract  void  close();

}

子類一 :鍵盤鎖門

public class KeypadDoor  extends  Door {
public  void open(){
    System.out.println("按鍵盤輸入密碼開門");
}

public void close(){
    System.out.println("拉上即可自動關門");
}
}

子類二:電動門

ublic class PowerDoor extends  Door{

    public  void  open(){
        System.out.println("按遙控開門");
    }

    public  void  close(){
        System.out.println("按遙控關門");
    }
}

測試

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


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

匿名類

Door door=new Door() {
            @Override
            public void open(){ 
                    System.out.println("臨時實現(xiàn)的開門方法");
            }

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

接口

1.關鍵字interface,實現(xiàn)類的關鍵字 implements 接口的名字

2.接口中寫方法的聲明 六孵, 沒有方法體

  1. 接口方法默認權限全部是public 贞铣,因此,可省略
  2. 實現(xiàn)類中需要全部實現(xiàn)接口中出現(xiàn)的未實現(xiàn)的方法

案例

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

    public  void close();
}

實現(xiàn)類

public class KeypadDoor implements Door {
    @Override
    public  void open(){
        System.out.println("按鍵盤輸入密碼開門");
    }
    @Override
    public  void  close(){
       System.out.println("拉上即可自動關門");
    }
}
public class PowerDoor implements Door{

    @Override
    public void open() {
        System.out.println("按遙控開門");
    }

    @Override
    public void close() {
      System.out.println("按遙控關門");
    }
}

接口沒有直接new 遣蚀,創(chuàng)建對象,但是可以臨時創(chuàng)建一個匿名的實現(xiàn)類

Door door=new Door() {
            @Override
            public void open(){
                    System.out.println("臨時實現(xiàn)的開門方法");
            }

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

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

public interface Door {
    //靜態(tài)常量
    String  des="是個門纱耻,注意安全";
}

接口中默認方法和靜態(tài)方法

public interface Door {
    //靜態(tài)常量
    String  des="是個門芭梯,注意安全";

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

    public  void close();

    public default void test01(){
        System.out.println("接口默認測試方法");
    }

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



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


        keypadDoor.test01();
      //  keypadDoor.teat02();
        com.company.Demo02.Door.test02();
       // com.company.Demo02.Door.test01();
}}

接口中默認方法只能通過實現(xiàn)類的對象 keypadDoor.test01();調(diào)用

接口中靜態(tài)方法只能通過接口名。方法Door.test02();調(diào)用

接口的多繼承

演示:

public interface GrandFather {
    public  void dioayu();

}
public interface Father {
    public  void chouyan();
}
public interface Son {
    public void play();
}

多繼承:一個接口可以同時繼承很多個接口

//接口的多繼承
public interface Temp extends GrandFather ,Father,Son {
}

子類必須實現(xiàn)抽象的父類中或抽象的祖先類中累計的未實現(xiàn)的抽象方法

祖先類中的抽象的方法弄喘,如果在抽象的父類中實現(xiàn)過玖喘,子類可以選擇實現(xiàn),也可以選擇不實現(xiàn)

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蘑志,一起剝皮案震驚了整個濱河市累奈,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌卖漫,老刑警劉巖费尽,帶你破解...
    沈念sama閱讀 222,729評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異羊始,居然都是意外死亡旱幼,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評論 3 399
  • 文/潘曉璐 我一進店門突委,熙熙樓的掌柜王于貴愁眉苦臉地迎上來柏卤,“玉大人冬三,你說我怎么就攤上這事≡蹈浚” “怎么了勾笆?”我有些...
    開封第一講書人閱讀 169,461評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長桥滨。 經(jīng)常有香客問我窝爪,道長,這世上最難降的妖魔是什么齐媒? 我笑而不...
    開封第一講書人閱讀 60,135評論 1 300
  • 正文 為了忘掉前任蒲每,我火速辦了婚禮,結果婚禮上喻括,老公的妹妹穿的比我還像新娘邀杏。我一直安慰自己,他們只是感情好唬血,可當我...
    茶點故事閱讀 69,130評論 6 398
  • 文/花漫 我一把揭開白布望蜡。 她就那樣靜靜地躺著,像睡著了一般拷恨。 火紅的嫁衣襯著肌膚如雪脖律。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,736評論 1 312
  • 那天挑随,我揣著相機與錄音状您,去河邊找鬼勒叠。 笑死兜挨,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的眯分。 我是一名探鬼主播拌汇,決...
    沈念sama閱讀 41,179評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼弊决!你這毒婦竟也來了噪舀?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 40,124評論 0 277
  • 序言:老撾萬榮一對情侶失蹤飘诗,失蹤者是張志新(化名)和其女友劉穎与倡,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體昆稿,經(jīng)...
    沈念sama閱讀 46,657評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡纺座,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,723評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了溉潭。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片净响。...
    茶點故事閱讀 40,872評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡少欺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出馋贤,到底是詐尸還是另有隱情赞别,我是刑警寧澤,帶...
    沈念sama閱讀 36,533評論 5 351
  • 正文 年R本政府宣布配乓,位于F島的核電站仿滔,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏犹芹。R本人自食惡果不足惜堤撵,卻給世界環(huán)境...
    茶點故事閱讀 42,213評論 3 336
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望羽莺。 院中可真熱鬧实昨,春花似錦、人聲如沸盐固。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刁卜。三九已至志电,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蛔趴,已是汗流浹背挑辆。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留孝情,地道東北人鱼蝉。 一個月前我還...
    沈念sama閱讀 49,304評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像箫荡,于是被迫代替她去往敵國和親魁亦。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,876評論 2 361

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