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

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

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

    BloveSaga

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

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

    ?? 理解繼承是理解面向?qū)ο蟪绦蛟O(shè)計(jì)的關(guān)鍵.在Java中,通過關(guān)鍵字extends繼承一個(gè)已有的類,被繼承的類稱為父類(超類,基類),新的類稱為子類(派生類).在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)
    在子類中定義一個(gè)與父類同名,返回類型,參數(shù)類型均相同的一個(gè)方法,稱為方法的覆蓋,方法的覆蓋發(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提供對(duì)父類的訪問
    * 可以使用super訪問父類被子類隱藏的變量或覆蓋的方法
    * 每個(gè)子類構(gòu)造方法的第一條語句都是隱含的調(diào)用super,如果父類沒有這種形式的構(gòu)造函數(shù)就會(huì)報(bào)錯(cuò).
    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 藍(lán)色Saga 閱讀(247) 評(píng)論(0)  編輯  收藏 所屬分類: Basic Study for JAVA
    主站蜘蛛池模板: 一级午夜a毛片免费视频| 亚洲а∨天堂久久精品9966| 日韩亚洲变态另类中文| 亚洲女同成av人片在线观看| 亚洲伊人久久大香线蕉苏妲己| 久久亚洲中文字幕精品有坂深雪| 日本免费一区二区久久人人澡| 91人成网站色www免费下载| 最近的免费中文字幕视频| 亚洲中文无韩国r级电影| 精品亚洲麻豆1区2区3区| 3344免费播放观看视频| 精品亚洲一区二区三区在线播放| 亚洲国产av高清无码| 在线播放免费人成视频网站| 91麻豆国产免费观看| 亚洲中文字幕无码av在线| 久久最新免费视频| 18禁无遮挡无码网站免费| 亚洲AV午夜福利精品一区二区| 亚洲色偷偷综合亚洲av78| 十九岁在线观看免费完整版电影| 亚洲国产高清精品线久久| 亚洲国产片在线观看| 成年性午夜免费视频网站不卡| 精品亚洲视频在线| 国产电影午夜成年免费视频| 久久久久久A亚洲欧洲AV冫| 久久青青草原国产精品免费| 久久激情亚洲精品无码?V| 免费人妻无码不卡中文字幕系| 国产亚洲精品精品国产亚洲综合| 男女作爱在线播放免费网站| 亚洲最大的黄色网| 无人在线观看免费高清视频| 亚洲国语在线视频手机在线| 67194成手机免费观看| 国产成人精品久久亚洲高清不卡| 亚洲午夜未满十八勿入网站2| 免费精品国产日韩热久久| 亚洲午夜电影在线观看高清|