คอนสตรัคเตอร์คล้ายกับเมธอดและถูกเรียกใช้ในเวลาที่สร้างอ็อบเจ็กต์ของคลาส โดยทั่วไปจะใช้เพื่อเริ่มต้นตัวแปรอินสแตนซ์ของคลาส ตัวสร้างมีชื่อเดียวกับคลาสและไม่มีประเภทส่งคืน
มีคอนสตรัคเตอร์สองประเภท คอนสตรัคเตอร์แบบกำหนดพารามิเตอร์ และคอนสตรัคเตอร์แบบไม่มีอาร์กิวเมนต์ วัตถุประสงค์หลักของคอนสตรัคเตอร์คือการเริ่มต้นตัวแปรอินสแตนซ์ของคลาส
ตัวอย่าง
ในตัวอย่างต่อไปนี้ เรากำลังพยายามเริ่มต้นตัวแปรอินสแตนซ์ของคลาสโดยใช้ตัวสร้าง no-arg
public class Test {
int num;
String data;
Test(){
num = 100;
data = "sample";
}
public static void main(String args[]){
Test obj = new Test();
System.out.println(obj.num);
System.out.println(obj.data);
}
} ผลลัพธ์
100 sample
ตัวอย่าง
ในตัวอย่างต่อไปนี้ เรากำลังพยายามเริ่มต้นตัวแปรอินสแตนซ์ของคลาสโดยใช้ตัวสร้างพารามิเตอร์
import java.util.Scanner;
public class Test {
int num;
String data;
Test(int num, String data){
this.num = num;
this.data = data;
}
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
System.out.println("Enter a string value: ");
String data = sc.nextLine();
System.out.println("Enter an integer value: ");
int num = sc.nextInt();
Test obj = new Test(num, data);
System.out.println(obj.num);
System.out.println(obj.data);
}
} ผลลัพธ์
Enter a string value: sample Enter an integer value: 1023 1023 sample