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

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

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

    BloveSaga

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

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

    ?? 理解繼承是理解面向對象程序設計的關鍵.在Java中,通過關鍵字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)
    在子類中定義一個與父類同名,返回類型,參數類型均相同的一個方法,稱為方法的覆蓋,方法的覆蓋發生在子類與父類之間.
    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調用父類的構造方法
    ??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;
    ?}
    }
    輸出結果:
    F:\Java Develop>javac Animal.java

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

    特殊變量super
    * 使用特殊變量super提供對父類的訪問
    * 可以使用super訪問父類被子類隱藏的變量或覆蓋的方法
    * 每個子類構造方法的第一條語句都是隱含的調用super,如果父類沒有這種形式的構造函數就會報錯.
    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;
    ?}
    }
    輸出結果:
    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
    主站蜘蛛池模板: 亚洲爆乳大丰满无码专区| 91成人免费观看网站| 一级人做人爰a全过程免费视频| 午夜在线免费视频| 青青青国产手机频在线免费观看| 老汉精品免费AV在线播放| 日韩av无码成人无码免费| 国产精品成人无码免费| 亚洲一区AV无码少妇电影☆| 亚洲一区影音先锋色资源| 亚洲欧美成人av在线观看| 国产在线观a免费观看| 1000部拍拍拍18免费网站| 日本大片在线看黄a∨免费| 亚洲日韩欧洲无码av夜夜摸| 亚洲国产综合精品| 成人a毛片视频免费看| 无码囯产精品一区二区免费 | 精品无码人妻一区二区免费蜜桃| 国产美女在线精品免费观看| 亚洲欧洲国产成人综合在线观看| 久久噜噜噜久久亚洲va久| 亚洲人成自拍网站在线观看 | 亚洲视频在线播放| 亚洲乱码国产乱码精华| 在线毛片片免费观看| 日韩激情无码免费毛片| 亚洲另类激情综合偷自拍| 小说区亚洲自拍另类| www.免费在线观看| 在线观看国产区亚洲一区成人 | 亚洲精品福利网站| 一级毛片免费毛片毛片| 男人的好看免费观看在线视频| 亚洲香蕉成人AV网站在线观看| 亚洲日韩中文字幕一区| 99热这里只有精品免费播放| 精品亚洲视频在线观看 | 亚洲综合男人的天堂色婷婷| 二区久久国产乱子伦免费精品| 好爽…又高潮了毛片免费看|