"नमस्कार, अमीगो! अब मैं आपको यह बताने जा रहा हूँ कि वस्तुएँ कैसे बनाई जाती हैं।"
"इसमें इतना जटिल क्या है, अंकल ऋषि? आप नया और क्लास का नाम लिखें, सही कंस्ट्रक्टर का संकेत दें, और आपका काम हो गया!"
"यह सच है। लेकिन जब आप ऐसा करते हैं तो वस्तु के अंदर क्या होता है?"
"क्या होता है?"
"ऐसा होता है: वस्तु कई चरणों में बनाई जाती है।"
1) सबसे पहले, कक्षा के सभी सदस्य चर के लिए स्मृति आवंटित की जाती है।
2) फिर बेस क्लास को इनिशियलाइज़ किया जाता है।
3) फिर सभी चरों को मान निर्दिष्ट किए जाते हैं, यदि कोई निर्दिष्ट किया गया हो।
4) अंत में कंस्ट्रक्टर को कॉल किया जाता है।
"यह बहुत मुश्किल नहीं लगता है: पहले चर, फिर निर्माता।"
"आइए देखें कि यह दो वर्गों के उदाहरण में कैसे काम करता है:"
कोड | विवरण |
---|---|
|
दो वर्गों की घोषणा करें: पालतू (पालतू) और बिल्ली (बिल्ली)।
कैट क्लास में, हम बेस क्लास के कंस्ट्रक्टर को एक स्पष्ट कॉल देखते हैं । मेमोरी आवंटित होने के बाद क्या होता है: फिर कैट क्लास को इनिशियलाइज़ किया जाना शुरू होता है। |
|
"यह थोड़ा भ्रमित करने वाला है। यह इतना जटिल क्यों है?"
"यह वास्तव में मुश्किल नहीं है यदि आप जानते हैं कि वास्तव में क्या चल रहा है:"
यदि किसी वर्ग में कोई कंस्ट्रक्टर नहीं है, तो एक स्वचालित रूप से बनाया जाएगा।
डिफ़ॉल्ट कंस्ट्रक्टर | |
---|---|
|
|
यदि आप बेस क्लास कन्स्ट्रक्टर को कॉल नहीं करते हैं, तो इसे स्वचालित रूप से कॉल किया जाएगा।
बेस क्लास के कंस्ट्रक्टर की कॉल | |
---|---|
|
|
|
|
सदस्य चर को कंस्ट्रक्टर में आरंभीकृत किया जाता है।
सदस्य चर का प्रारंभ | |
---|---|
|
|
वास्तव में क्या होता है | |
---|---|
|
|
"अब यह बहुत अधिक स्पष्ट है: पहले बेस क्लास, फिर कंस्ट्रक्टर के बाहर वेरिएबल्स, फिर कंस्ट्रक्टर कोड।"
"शाबाश, अमीगो! बस!"
GO TO FULL VERSION