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

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

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

    風雨無阻

    java初始化順序

    在一個類里,初始化的順序是由變量在類內的定義順序決定的。即使變量定義大量遍布于方法定義的中間,那些變量仍會在調用任何方法之前得到初始化——甚至在構建器調用之前。例如:
    class Tag {
      Tag(int marker) {
        System.out.println("Tag(" + marker + ")");
      }
    }

    class Card {
      Tag t1 = new Tag(1); // 先初始化t1
      Card() {
        // Indicate we're in the constructor:
        System.out.println("Card()");
        t3 = new Tag(33); // Re-initialize t3
      }
      Tag t2 = new Tag(2); // 然后初始化t2
      void f() {
        System.out.println("f()");
      }
      Tag t3 = new Tag(3); // 接著初始化t3
    }

    public class OrderOfInitialization {
      public static void main(String[] args) {
        Card t = new Card();
        t.f(); // Shows that construction is done
      }
    }

    它的輸入結果如下:
    "Tag(1)",
       "Tag(2)",
       "Tag(3)",
       "Card()",
       "Tag(33)",
       "f()"
    // 以下是人綜合例子:
    //總的原則:先靜態后動態,先定義初始化,后構造函數初始化
    /**
       * 實例化Child對象時
       * 先父類靜態成員初始化,后子類靜態成員初始化
       * 然后是父類成員,父類構造函數,最后是子類
       * 成員,子類構造函數
    */

    class Parent {
     private static int s = getS("父類靜態成員");

     private int num = getNum();

     public Parent() {
      System.out.println("父類構造函數");
     }

     private static int getS(String string) {
      System.out.println(string);
      return 47;
     }

     public int getNum() {
      System.out.println("父類私有成員");
      return num;
     }

     public static void setS(int s) {
      Parent.s = s;
     }

    }

    class Child extends Parent {
     private int num = prt("子類私有成員");

     private static int s = getS("子類靜態成員");

     public static void setS(int s) {
      Child.s = s;
     }

     public Child() {
      System.out.println("子類構造函數");
     }

     public void setNum(int num) {
      this.num = num;
     }

     private int prt(String string) {
      System.out.println(string);
      return 5;
     }

     public static int getS(String string) {
      System.out.println(string);
      return s;
     }
    }


    public class Tee {

     /**
      * @param args
      */
     public static void main(String[] args) {
      Child c = new Child();
      c.setNum(100);

      // 為什么輸出的是0
      System.out.print(c.getNum());

    //  Child cStatic = new Child();
    //  cStatic.setS(100);
    //  System.out.println(cStatic.getS("s"));
         


     }

    }

    最后輸出結果:
    父類靜態成員
    子類靜態成員
    父類私有成員
    父類構造函數
    子類私有成員
    子類構造函數
    父類私有成員
    0

    posted on 2008-03-12 15:09 秋楓故事 閱讀(409) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2008年3月>
    2425262728291
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    導航

    統計

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    新聞檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲精品免费在线观看| 亚洲欧美成人av在线观看| 亚洲六月丁香六月婷婷色伊人| 中文字幕av免费专区| 亚洲男人的天堂在线va拉文| 韩国亚洲伊人久久综合影院| 五月天婷婷免费视频| 亚洲国产成人a精品不卡在线| 久久精品国产亚洲AV麻豆~| APP在线免费观看视频| 亚洲精品自产拍在线观看| 亚洲av无码专区在线电影| 色吊丝永久在线观看最新免费| 亚洲人成中文字幕在线观看| 青柠影视在线观看免费高清| 亚洲va无码va在线va天堂| 99国产精品视频免费观看| 亚洲免费电影网站| 午夜一级免费视频| 欧洲乱码伦视频免费国产| 国产午夜亚洲精品国产成人小说| 亚洲色偷精品一区二区三区| 日本免费网站观看| 精品国产日韩久久亚洲| 免费无码又爽又刺激高潮视频 | 亚洲Av无码精品色午夜| 99视频在线看观免费| 伊人久久亚洲综合影院首页| 免费中文字幕在线观看| 亚洲一区二区三区写真| 亚洲Av无码国产情品久久| 久久免费视频网站| 亚洲色偷偷综合亚洲av78| 亚洲国产婷婷综合在线精品| 久久中文字幕免费视频| 亚洲中文字幕久久精品蜜桃| 一本色道久久综合亚洲精品| 免费专区丝袜脚调教视频| 无码专区—VA亚洲V天堂| 中文字幕免费在线看线人动作大片| 久久综合图区亚洲综合图区|