<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
    主站蜘蛛池模板: 久久久久久亚洲av无码蜜芽| 国产成人精品久久免费动漫| 黄色网址免费在线| 老司机精品视频免费| 日韩免费视频在线观看| 亚洲香蕉成人AV网站在线观看| 亚洲国产综合91精品麻豆| 亚洲一区二区三区成人网站| 日韩免费高清播放器| 在线观看免费污视频| 久久亚洲一区二区| 香蕉视频免费在线| 亚洲成a人片在线观看久| 亚洲性色成人av天堂| 热久久这里是精品6免费观看| 四虎成人免费网址在线| 亚洲av无码专区亚洲av不卡| 好男人视频社区精品免费| 亚洲经典千人经典日产| 在线看片免费不卡人成视频| 亚洲AV永久青草无码精品| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 国产99久久亚洲综合精品| 91香焦国产线观看看免费| 亚洲精品网站在线观看不卡无广告 | 久久精品无码免费不卡| 国产精品无码一区二区三区免费| 亚洲视频中文字幕| 国产免费看JIZZ视频| 婷婷亚洲综合五月天小说在线| 亚洲午夜久久久影院| 99re在线精品视频免费| 亚洲av无码国产精品夜色午夜| 免费A级毛片无码专区| 天堂亚洲国产中文在线| 1000部无遮挡拍拍拍免费视频观看| 亚洲va无码va在线va天堂| 亚洲日本在线免费观看| 美女18毛片免费视频| 亚洲国产二区三区久久| 四虎影视www四虎免费|