एक कंस्ट्रक्टर विधि के समान होता है और इसे क्लास का ऑब्जेक्ट बनाते समय बुलाया जाता है, इसका उपयोग आमतौर पर क्लास के इंस्टेंस वेरिएबल्स को इनिशियलाइज़ करने के लिए किया जाता है। कंस्ट्रक्टर्स का नाम उनकी क्लास के समान होता है और उनका कोई रिटर्न टाइप नहीं होता है।
दो प्रकार के कंस्ट्रक्टर पैरामीटरयुक्त कंस्ट्रक्टर और नो-आर्ग कंस्ट्रक्टर हैं।
पैरामीटरेटेड कंस्ट्रक्टर
एक पैरामीटरयुक्त कंस्ट्रक्टर उन मापदंडों को स्वीकार करता है जिनके साथ आप इंस्टेंस वेरिएबल्स को इनिशियलाइज़ कर सकते हैं। पैरामीटराइज्ड कंस्ट्रक्टर का उपयोग करके, आप क्लास को अलग-अलग वैल्यू के साथ इंस्टेंट करते समय गतिशील रूप से क्लास वेरिएबल्स को इनिशियलाइज़ कर सकते हैं।
उदाहरण
import java.util.Scanner; public class Test { int num; String data; float flt; Test(int num, String data, float flt){ this.num = num; this.data = data; this.flt = flt; } public static void main(String args[]){ Scanner sc = new Scanner(System.in); System.out.println("Enter an integer value: "); int num = sc.nextInt(); System.out.println("Enter a string value: "); String data = sc.next(); System.out.println("Enter a floating point value: "); float flt = sc.nextFloat(); Test obj = new Test(num, data, flt); System.out.println(obj.num); System.out.println(obj.data); System.out.println(obj.flt); } }
आउटपुट
Enter an integer value: 1024 Enter a string value: test Enter a floating point value: 11.2 1024 test 11.2
नो-आर्ग कंस्ट्रक्टर
एक नो-आर्ग कंस्ट्रक्टर किसी भी पैरामीटर को स्वीकार नहीं करता है, यह क्लास वेरिएबल्स को उनके संबंधित डिफ़ॉल्ट मानों (यानी ऑब्जेक्ट्स के लिए शून्य, फ्लोट के लिए 0.0 और डबल, बूलियन के लिए झूठा, बाइट, शॉर्ट, इंट और लॉन्ग के लिए 0) के साथ इंस्टेंट करता है।
उदाहरण
public class Test { int num; String data; float flt; Test(){ this.num = 100; this.data = "test"; this.flt = 125.33f; } public static void main(String args[]){ Test obj = new Test(); System.out.println(obj.num); System.out.println(obj.data); System.out.println(obj.flt); } }
आउटपुट
100 test 125.33