एक निर्माता विधि के समान है और इसे क्लास का ऑब्जेक्ट बनाते समय लागू किया जाता है, इसका उपयोग आमतौर पर किसी क्लास के इंस्टेंस वेरिएबल्स को इनिशियलाइज़ करने के लिए किया जाता है। कंस्ट्रक्टर्स का नाम उनकी क्लास के समान होता है और उनका कोई रिटर्न टाइप नहीं होता है।
जावा में डिफ़ॉल्ट कंस्ट्रक्टर कक्षा के डेटा सदस्यों को उनके डिफ़ॉल्ट मानों जैसे 0 int, 0.0 डबल आदि के लिए प्रारंभ करता है। यह कन्स्ट्रक्टर जावा कंपाइलर द्वारा डिफ़ॉल्ट रूप से कार्यान्वित किया जाता है यदि उपयोगकर्ता द्वारा कक्षा के लिए कोई स्पष्ट कन्स्ट्रक्टर लागू नहीं किया गया है ।
यदि आप निम्नलिखित उदाहरण देखते हैं, तो हम इसे कोई कंस्ट्रक्टर प्रदान नहीं कर रहे हैं।
public class Sample { int num; public static void main(String args[]){ System.out.println(new Sample().num); } }
यदि आप उपरोक्त प्रोग्राम को संकलित और चलाते हैं, तो डिफ़ॉल्ट कंस्ट्रक्टर पूर्णांक चर संख्या को 0 से आरंभ करता है और, परिणाम के रूप में आपको 0 मिलेगा।
जावाप कमांड एक वर्ग के क्षेत्रों, निर्माणकर्ताओं और विधियों के बारे में जानकारी प्रदर्शित करता है। यदि आप (इसे संकलित करने के बाद) javap कमांड का उपयोग करके उपरोक्त वर्ग चलाते हैं, तो आप नीचे दिखाए गए अनुसार कंपाइलर द्वारा जोड़े गए डिफ़ॉल्ट कंस्ट्रक्टर को देख सकते हैं -
D:\>javap Sample Compiled from "Sample.java" public class Sample { int num; public Sample(); public static void main(java.lang.String[]); }
उदाहरण
public class Sample{ int num; Sample(){ num = 100; } Sample(int num){ this.num = num; } public static void main(String args[]){ System.out.println(new Sample().num); System.out.println(new Sample(1000).num); } }
आउटपुट
100 1000