Object’s state को आरंभ करने के लिए constructors का उपयोग किया जाता है। Methods की तरह, एक कन्स्ट्रक्टर में Object creation के समय execute statements (यानी instructions) का संग्रह भी होता है।
एक constructor एक method के समान होता है (लेकिन वास्तव में ये एक method नहीं है) जिसे object instant होने पर automatically अभिमंत्रित किया जाता है।
Java compiler एक method और एक कन्स्ट्रक्टर के बीच इसके नाम और return type के बीच अंतर करता है। जावा में, एक कन्स्ट्रक्टर का वर्ग के समान नाम होता है, और किसी भी मान वापस नहीं करता है।
Every time ऑब्जेक्ट को नए () कीवर्ड का उपयोग करके बनाया जाता है, और कम से कम एक कन्स्ट्रक्टर को called किया जाता है। यह एक डिफ़ॉल्ट कन्स्ट्रक्टर कहते हैं।
Constructor का नाम अपने class के नाम के समान होना चाहिए
एक constructor के पास कोई explicit वापसी type नहीं होना चाहिए
एक जावा constructor abstract, static, अंतिम और सिंक्रनाइज़ नहीं हो सकता है
Constructors निजी नहीं हो सकते हैं।
Constructors एक मूल्य वापस नहीं कर सकते हैं।
एक bstract class में कन्स्ट्रक्टर हो सकता है।
जावा में दो प्रकार के constructors होते हैं:
Default constructor (no-arg constructor)
Parameterized constructor
एक कन्स्ट्रक्टर को "डिफ़ॉल्ट कन्स्ट्रक्टर" तब कहा जाता है जब उसके पास कोई पैरामीटर नहीं होता है।
<class_name>(){}
एक कन्स्ट्रक्टर जिसमें पैरामीटर की एक विशिष्ट संख्या होती है उसे पैरामीटरयुक्त कन्स्ट्रक्टर कहा जाता है।
एक पैरामीटर वाले constructor को parameterized कन्स्ट्रक्टर के रूप में जाना जाता है। यदि हम कक्षा के फ़ील्ड को अपने मूल्यों से प्रारंभ करना चाहते हैं, तो पैरामीटरयुक्त कन्स्ट्रक्टर का उपयोग करें।