Java中的預設建構函式有什麼作用?


Java中的預設建構函式

建構函式在建立物件時對其進行初始化。它與它的類名相同,在語法上類似於方法。但是,建構函式沒有顯式的返回型別。它主要分為兩種型別:

  • 帶引數的建構函式 - 帶有引數的建構函式。
  • 無引數建構函式 - 沒有引數的建構函式。

示例

 線上演示

public class Sample{
   int num;
   Sample(){
      num = 100;
   }
   Sample(int num){
      this.num = num;
   }
   public static void main(String args[]){
      System.out.println(new Sample().num);
      System.out.println(new Sample(1000).num);
   }
}

輸出

100
1000

預設建構函式

建議在定義類時提供上述任何一種建構函式。如果沒有,Java編譯器會代表你提供一個無引數的預設建構函式。

這是一個建構函式,它使用它們各自的預設值(例如,物件為null,浮點型和雙精度型為0.0,布林型為false,位元組型、短整型、整型和長整型為0)初始化類的變數。

如果你觀察下面的例子,我們沒有為它提供任何建構函式。

public class Sample{
   int num;
   public static void main(String args[]){
      System.out.println(new Sample().num);
   }
}

如果你編譯並執行上面的程式,預設建構函式會將整數變數num初始化為0,你將得到0作為結果。

使用javap驗證

javap 命令顯示關於類的欄位、建構函式和方法的資訊。如果你(在編譯後)使用javap命令執行上面的類,你可以觀察到編譯器新增的預設建構函式,如下所示

D:\>javap Sample
Compiled from "Sample.java"
public class Sample {
   int num;
   public Sample();
   public static void main(java.lang.String[]);
}

更新於: 2020年3月12日

2K+ 次瀏覽

啟動你的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.