posts - 4,  comments - 0,  trackbacks - 0

          什么是是JAVA構造函數  

          每創建一個類的實例都去初始化它的所有變量是乏味的。如果一個對象在被創建時就完成了所有的初始工作,將是簡單的和簡潔的。因此,Java在類里提供了一個特殊的成員函數,叫做構造函數(Constructor)。 
            一個構造函數是對象被創建時初始對象的成員函數。它具有和它所在的類完全一樣的名字。一旦定義好一個構造函數,new運算符一起使用,創建對象時就會自動調用它。構造函數沒有返回類型,即使是void類型也沒有。這是因為一個類的構造函數的返回值的類型就是這個類本身。構造函數的任務是初始化一個對象的內部狀態,所以用new操作符創建一個實例后,立刻就會得到一個清楚、可用的對象。 

          構造方法是一種特殊的方法,具有以下特點。 
          1)構造方法的方法名必須與類名相同。 
          2)構造方法沒有返回類型,也不能定義為void,在方法名前面不聲明方法類型。 
          3)構造方法的主要作用是完成對象的初始化工作,它能夠把定義對象時的參數傳給對象的域。 
          4)構造方法不能由編程人員調用,而要系統調用。 

          5構造函數不能被直接調用,必須通過new運算符在創建對象時才會自動調用(即在new的時候就開始執行構造函數里面的語句);而一般的方法是在程序執行到它的時候被調用的.
          6)一個類可以定義多個構造方法,如果在定義類時沒有定義構造方法,則編譯系統會自動插入一個無參數的默認構造器,這個構造器不執行任何代碼。 
          7)構造方法可以重載,以參數的個數,類型,或排列順序區分。

          8當定義一個類的時候,如果程序員不創建構造函數,則Java編譯器就會提供一個默認的不帶參數的構造函數。創建對象時系統就會自動調用這個默認的構造函數來創建類的對象。如

          Public Class Person{

          Int age;

          String name;

          //默認的構造函數為(java編輯器會自動生成的)

             Public Person(){

          }

          Person p=new Person();

          p.age=10;

          p.name=”張三”;

          }

          java 構造函數的執行過程

          類初始化時構造函數調用順序:
           
          1)初始化對象的存儲空間為零或null值;
           
          2)調用父類構造函數;
           
          3)按順序分別調用類成員變量和實例成員變量的初始化表達式;

          public class Demo_1 {

           

              /**

               * @param args

               */

             

             

           

              public static void main(String[] args){

              

                    new Money();

                    new Dollar();

                    new Rmb();

              

              }

          }

          class Money{

          public Money(){

           System.out.println("Money is construct");

          }

          }

          class Dollar{

          public Dollar(){

             

              System.out.println("Dollar is construct!");

            

             }

          }

          class Rmb{

          public Rmb(){

           System.out.println("RMB is construct");

          }

          }

           

          輸出結果:
          Money is construct

          Dollar is construct!

          RMB is construct

          posted on 2011-11-05 09:59 愛燕神鷹 閱讀(3175) 評論(0)  編輯  收藏

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


          網站導航:
           
          <2011年11月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          常用鏈接

          留言簿

          隨筆檔案

          文章檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 阿城市| 大田县| 固始县| 汉沽区| 阿瓦提县| 龙门县| 历史| 正镶白旗| 商城县| 仁化县| 晴隆县| 察哈| 和政县| 阿拉尔市| 略阳县| 宜州市| 吴江市| 响水县| 宜兰县| 吴旗县| 沁阳市| 淮滨县| 奈曼旗| 左贡县| 抚州市| 堆龙德庆县| 瑞丽市| 邵阳市| 宣武区| 株洲县| 延边| 霍林郭勒市| 鹿泉市| 正蓝旗| 孝昌县| 曲松县| 云龙县| 弥渡县| 东兰县| 新兴县| 荣昌县|