Java 中是否可以有多個建構函式?
一個類中可以有多個建構函式。但是,這些建構函式的引數列表不得相同。這稱為建構函式過載。
一個對此進行演示的程式如下 −
示例
class NumberValue { private int num; public NumberValue() { num = 6; } public NumberValue(int n) { num = n; } public void display() { System.out.println("The number is: " + num); } } public class Demo { public static void main(String[] args) { NumberValue obj1 = new NumberValue(); NumberValue obj2 = new NumberValue(15); obj1.display(); obj2.display(); } }
輸出
The number is: 6 The number is: 15
現在我們來理解一下上述程式。
NumberValue 類由資料成員 num 和單一成員函式 display() 建立,後者顯示 num 的值。NumberValue 類中有兩個建構函式,其中一個不帶任何引數,而另一個帶有一個 int 型別引數。演示此過程的程式碼片段如下 −
class NumberValue { private int num; public NumberValue() { num = 6; } public NumberValue(int n) { num = n; } public void display() { System.out.println("The number is: " + num); } }
在 main() 方法中,建立了 NumberValue 類的物件 obj1 和 obj2,並針對這兩類物件呼叫了 display() 方法。演示此過程的程式碼片段如下
public class Demo { public static void main(String[] args) { NumberValue obj1 = new NumberValue(); NumberValue obj2 = new NumberValue(15); obj1.display(); obj2.display(); } }
廣告