คอนสตรัคเตอร์คล้ายกับเมธอดและถูกเรียกใช้ในเวลาที่สร้างอ็อบเจ็กต์ของคลาส โดยทั่วไปจะใช้เพื่อเริ่มต้นตัวแปรอินสแตนซ์ของคลาส ตัวสร้างมีชื่อเดียวกับคลาสและไม่มีประเภทส่งคืน
มีคอนสตรัคเตอร์สองประเภท คอนสตรัคเตอร์แบบกำหนดพารามิเตอร์ และคอนสตรัคเตอร์แบบไม่มีอาร์กิวเมนต์ วัตถุประสงค์หลักของคอนสตรัคเตอร์คือการเริ่มต้นตัวแปรอินสแตนซ์ของคลาส
ตัวอย่าง
ในตัวอย่างต่อไปนี้ เรากำลังพยายามเริ่มต้นตัวแปรอินสแตนซ์ของคลาสโดยใช้ตัวสร้าง 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