posts - 12,  comments - 7,  trackbacks - 0

          Java對變量和對象的初始化做的是很好的!以下是本人自己寫的一點...............
          在Java中,普通變量(局部變量)需要明確初始化之后才能使用,否則編譯器將報錯!
          而對于對象的初始化Java也采用了C++引入的構造器,構造器是一個在創建對象時被自動調用的特殊方法。這樣可以確保在用戶有能力操作對象之前對象已經被初始化了。
          在創建對象時,域變量及域對象首先會被初始化為起默認值,然后才會根據你在構造器中的賦值進行改變!
          在類的內部,變量定義的先后順序決定了初始化的順序。即使變量定義散布于方法定義之間,它們仍舊會在任何方法(包括構造器)被調用之前得到初始化。
          至于靜態數據域的初始化,大家都知道啦,無論你創建多少個對象,類的靜態數據域都只有一份,它只占用一份存儲區域。并且它的初始化是發生在“非靜態域”之前,在類被第一次加載的時候被初始化“一次”,只初始化一次!
          在Java中,如果用戶沒有為類提供一個構造器,那么編譯器就會自動幫你創建一個默認構造器(即無參構造器),以便用戶能創建對象。但是如果用戶已經定義了一個構造器(無論是有參還是無參的),編譯器就不會再為你自動創建默認構造器了!和C++一樣,Java中的構造器是可以重載的,并且他們是可以互相調用的。當構造器調用時就涉及到了我們的關鍵字“this”(this這個關鍵字表示的是當前對象的引用)。當在一個構造器中調用另一個構造器時必須把調用語句置于本構造器的第一行,如:

          class Test {
              ..
              ..
              Test(
          int i) {}

              Test(String str,
          int i) {
                  
          this
          (i);
                  ..
                  ..
              }

          }

          雖然在構造器中用this關鍵字調用另一個構造器,但是卻不能同時調用兩個以及更多。

          posted on 2009-02-26 22:36 Jun Woo 閱讀(2057) 評論(1)  編輯  收藏

          FeedBack:
          # re: 初始化與構造器[未登錄]
          2009-02-27 09:22 | bcterry
          同學,這么簡單的東東就不要放在這了吧  回復  更多評論
            

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


          網站導航:
           
          <2009年2月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          1234567

          愛好者!邊學邊練,勇往直前!大家精誠合作,一起進步,由成為.以后好吃好耍好

          常用鏈接

          留言簿(1)

          隨筆檔案

          相冊

          搜索

          •  

          積分與排名

          • 積分 - 10483
          • 排名 - 2345

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 绥江县| 广宗县| 武定县| 会理县| 巨鹿县| 名山县| 沾益县| 龙游县| 抚松县| 临江市| 江孜县| 大新县| 竹山县| 奎屯市| 会泽县| 烟台市| 玉门市| 本溪市| 赤壁市| 嘉荫县| 阿克苏市| 泸溪县| 绥江县| 元氏县| 黑河市| 宜昌市| 钦州市| 象州县| 赤水市| 刚察县| 综艺| 昂仁县| 巧家县| 株洲市| 汝州市| 法库县| 关岭| 宜昌市| 海伦市| 陆良县| 周口市|