एक कंस्ट्रक्टर विधि के समान होता है और इसे क्लास का ऑब्जेक्ट बनाते समय बुलाया जाता है, इसका उपयोग आमतौर पर क्लास के इंस्टेंस वेरिएबल्स को इनिशियलाइज़ करने के लिए किया जाता है। कंस्ट्रक्टर्स का नाम उनकी क्लास के समान होता है और उनका कोई रिटर्न टाइप नहीं होता है।
दो प्रकार के कंस्ट्रक्टर पैरामीटरयुक्त कंस्ट्रक्टर और नो-आर्ग कंस्ट्रक्टर हैं।
पैरामीटरेटेड कंस्ट्रक्टर
एक पैरामीटरयुक्त कंस्ट्रक्टर उन मापदंडों को स्वीकार करता है जिनके साथ आप इंस्टेंस वेरिएबल्स को इनिशियलाइज़ कर सकते हैं। पैरामीटराइज्ड कंस्ट्रक्टर का उपयोग करके, आप क्लास को अलग-अलग वैल्यू के साथ इंस्टेंट करते समय गतिशील रूप से क्लास वेरिएबल्स को इनिशियलाइज़ कर सकते हैं।
उदाहरण
public class StudentData { private String name; private int age; public StudentData(String name, int age){ this.name = name; this.age = age; } public StudentData(){ this(null, 0); } public StudentData(String name) { this(name, 0); } public StudentData(int age) { this(null, age); } public void display(){ System.out.println("Name of the Student: "+this.name ); System.out.println("Age of the Student: "+this.age ); } public static void main(String args[]) { //Reading values from user Scanner sc = new Scanner(System.in); System.out.println("Enter the name of the student: "); String name = sc.nextLine(); System.out.println("Enter the age of the student: "); int age = sc.nextInt(); System.out.println(" "); //Calling the constructor that accepts both values System.out.println("Display method of constructor that accepts both values: "); new StudentData(name, age).display(); System.out.println(" "); //Calling the constructor that accepts name System.out.println("Display method of constructor that accepts only name: "); new StudentData(name).display(); System.out.println(" "); //Calling the constructor that accepts age System.out.println("Display method of constructor that accepts only age: "); new StudentData(age).display(); System.out.println(" "); //Calling the default constructor System.out.println("Display method of default constructor: "); new StudentData().display(); } }
आउटपुट
Enter the name of the student: Krishna Enter the age of the student: 22 Display method of constructor that accepts both values: Name of the Student: Krishna Age of the Student: 22 Display method of constructor that accepts only name: Name of the Student: Krishna Age of the Student: 0 Display method of constructor that accepts only age: Name of the Student: null Age of the Student: 22