<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    BloveSaga

    在希臘帕爾納斯山南坡上,有一個馳名世界的戴爾波伊神托所,在它的入口處的巨石上赫然銹刻著這樣幾個大字: 認識你自己!

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
      34 隨筆 :: 12 文章 :: 122 評論 :: 0 Trackbacks

    ?? 理解繼承是理解面向?qū)ο蟪绦蛟O(shè)計的關(guān)鍵.在Java中,通過關(guān)鍵字extends繼承一個已有的類,被繼承的類稱為父類(超類,基類),新的類稱為子類(派生類).在Java中不允許多繼承.code:
    class Animal
    {
    ?int height,weight;
    ?void eat()
    ?{
    ??System.out.println("Animal eat!");
    ?}
    ?void sleep()
    ?{
    ??System.out.println("Animal sleep!");
    ?}
    ?void breathe()
    ?{
    ??System.out.println("Animal breathe!");
    ?}
    }
    class Fish extends Animal
    {
    ?
    }
    class DoMain
    {
    ?public static void main(String[] args)
    ?{
    ??Animal an=new Animal();
    ??Fish fn=new Fish();
    ??
    ??an.breathe();
    ??fn.breathe();
    ??fn.height=30;
    ??fn.weight=20;
    ?}
    }
    Result:
    F:\Java Develop>javac Animal.java

    F:\Java Develop>java DoMain
    Animal breathe!
    Animal breathe!
    (這說明派生類繼承了父類的所有方法和成員變量.)

    方法的覆蓋(override)
    在子類中定義一個與父類同名,返回類型,參數(shù)類型均相同的一個方法,稱為方法的覆蓋,方法的覆蓋發(fā)生在子類與父類之間.
    code:
    class Animal
    {
    ?int height,weight;
    ?void eat()
    ?{
    ??System.out.println("Animal eat!");
    ?}
    ?void sleep()
    ?{
    ??System.out.println("Animal sleep!");
    ?}
    ?void breathe()
    ?{
    ??System.out.println("Animal breathe!");
    ?}
    }
    class Fish extends Animal
    {
    ?int weight,height;?? //隱藏了父類的weight,height;
    ?void breathe()? //override method breathe()
    ?{
    ??super.breathe();? //用super調(diào)用父類的構(gòu)造方法
    ??System.out.println("Fish bubble");
    ?}
    }
    class DoMain
    {
    ?public static void main(String[] args)
    ?{
    ?//?Animal an=new Animal();
    ??Fish fn=new Fish();
    ??
    ??an.breathe();
    ??fn.breathe();
    ??fn.height=30;
    ??fn.weight=20;
    ?}
    }
    輸出結(jié)果:
    F:\Java Develop>javac Animal.java

    F:\Java Develop>java DoMain
    Animal breathe!
    Fish bubble

    特殊變量super
    * 使用特殊變量super提供對父類的訪問
    * 可以使用super訪問父類被子類隱藏的變量或覆蓋的方法
    * 每個子類構(gòu)造方法的第一條語句都是隱含的調(diào)用super,如果父類沒有這種形式的構(gòu)造函數(shù)就會報錯.
    code:
    class Animal
    {
    ?int height,weight;
    ?Animal()
    ?{
    ??System.out.println("Animal construct");
    ?}
    ?void eat()
    ?{
    ??System.out.println("Animal eat!");
    ?}
    ?void sleep()
    ?{
    ??System.out.println("Animal sleep!");
    ?}
    ?void breathe()
    ?{
    ??System.out.println("Animal breathe!");
    ?}
    }

    class Fish extends Animal
    {
    ?Fish()
    ?{
    ??System.out.println("Fish construct");
    ?}
    ?void breathe()? //override method breathe()
    ?{
    ??System.out.println("Fish bubble");
    ?}
    }
    class DoMain
    {
    ?public static void main(String[] args)
    ?{
    ??//Animal an=new Animal();
    ??Fish fn=new Fish();
    ??
    ??//an.breathe();
    ??//fn.breathe();
    ??//fn.height=30;
    ??//fn.weight=20;
    ?}
    }
    輸出結(jié)果:
    F:\Java Develop>javac Animal.java

    F:\Java Develop>java DoMain
    Animal construct
    Fish construct

    posted on 2006-06-04 11:18 藍色Saga 閱讀(243) 評論(0)  編輯  收藏 所屬分類: Basic Study for JAVA
    主站蜘蛛池模板: 亚洲一区精品伊人久久伊人| 999任你躁在线精品免费不卡| 亚洲人成色99999在线观看| 久久久亚洲裙底偷窥综合| 亚洲人成在线观看| 久久精品国产亚洲AV无码偷窥| 在线亚洲97se亚洲综合在线 | 又长又大又粗又硬3p免费视频| 看亚洲a级一级毛片| 色欲aⅴ亚洲情无码AV蜜桃| 亚洲国产AV无码一区二区三区| 亚洲无码一区二区三区| 无码一区二区三区亚洲人妻| 国内成人精品亚洲日本语音 | 亚洲日韩中文字幕天堂不卡| 亚洲精品美女久久久久| 亚洲日韩在线视频| 国产精品亚洲精品观看不卡| 亚洲AV无码专区在线厂| 一级日本高清视频免费观看| 免费看黄的成人APP| 久久午夜羞羞影院免费观看 | 九九综合VA免费看| 成在人线av无码免费高潮水| 日本免费久久久久久久网站| 精品无码免费专区毛片| 成人毛片18女人毛片免费视频未 | 亚洲免费福利在线视频| 大学生高清一级毛片免费| 四虎永久在线精品视频免费观看| 亚洲女同成人AⅤ人片在线观看| 国产亚洲精AA在线观看SEE| 亚洲成人在线电影| 亚洲精品123区在线观看| 免费无遮挡无遮羞在线看| 久久精品国产影库免费看| 青青青国产在线观看免费网站 | 91大神在线免费观看| 成人免费无码大片A毛片抽搐| 亚洲天堂中文字幕在线| 亚洲人成网址在线观看|