2012-04-01 15 views
6

में 'इस' कीवर्ड का उपयोग करके मैं जावा में this कीवर्ड से उलझन में हूं। यदि किसी वर्ग में दो रचनाकार हैं और हम this कीवर्ड का उपयोग किसी विधि में करते हैं, तो this द्वारा प्रदर्शित ऑब्जेक्ट को दो रचनाकारों का उपयोग करके तत्काल किया जाता है?जावा कन्स्ट्रक्टर

उत्तर

7

यह देखभाल और पृथक

है यह कुछ हद तक एक कार के निर्माण की तरह है नहीं करता है। सुविधाओं पर निर्भर करता है एक अन्य निर्माता प्रयोग किया जाता है, लेकिन अंत में आप एक कार (यह)

+0

फूलों के लिए धन्यवाद ;-) –

2

आप एक प्लेसहोल्डर के रूप this कीवर्ड के बारे में सोच सकते हैं। रनटाइम पर उस कीवर्ड के ऑब्जेक्ट संदर्भ के साथ कीवर्ड का आदान-प्रदान किया जाता है जिसके साथ आप काम कर रहे हैं।

3

इसे रचनाकारों, स्मृति आवंटन या उसके जैसा कुछ भी करने की ज़रूरत नहीं है। this कीवर्ड केवल वर्तमान ऑब्जेक्ट उदाहरण संदर्भ है।

7

this कीवर्ड का दो अर्थ है और भ्रम इन दो अर्थों के आसपास हो सकता है।

निर्माता में, this(...) रचनाकारों के लिए एक विधि कॉल की तरह है। कंपाइलर आपके द्वारा उपयोग किए जाने वाले तर्कों की संख्या और प्रकारों के आधार पर कॉल करने के लिए कौन सा कन्स्ट्रक्टर चुनता है।

जब आप संदर्भ के रूप में this का उपयोग करते हैं, तो इसका अर्थ यह वस्तु है, और किस कन्स्ट्रक्टर का उपयोग किया गया महत्वपूर्ण नहीं है।

20

आप this. और this() के बीच अंतर करना है, तो बात करने के लिए है:

अधिकांश समय, आप मौजूदा वस्तु के संदर्भ में है, यानी इस वस्तु के संदर्भ this के लिए कार्यावधि में बदल दिया जाता है के रूप में this का उपयोग करें। उदाहरण के लिए, यदि आप पैरामीटर या संदर्भ this.someMember के रूप में this का उपयोग करते हैं।

आप विभिन्न पैरामीटर के साथ विभिन्न रचनाकार हो सकते हैं, यानी ओवरलोड कन्स्ट्रक्टर। एक कन्स्ट्रक्टर की शुरुआत में, आप पहले निर्देश के रूप में this(parameter_1, ... parameter_n); का उपयोग करके एक अलग कन्स्ट्रक्टर को कॉल कर सकते हैं।

दोनों मामलों का एक अच्छा स्पष्टीकरण the java tutorial about the this keyword पर पाया जा सकता है।

1

एक विधि निकाय के भीतर this का उपयोग उस वर्ग के उदाहरण को संदर्भित करता है जिसमें विधि मौजूद है।

यह भी दर्शाता है कि thisstatic संदर्भ से उपयोग नहीं किया जा सकता है।

0

1.'this 'कीवर्ड बनाया गया था की regarldless उदाहरण ही प्रतीक है वर्ग की वस्तु को संदर्भित करता है, जहां यह used.Generally हम उदाहरण चर, class.All इस में निर्माणकर्ता और तरीकों लिखना है सदस्यों को 'इस' द्वारा दर्शाया जाता है।
2. जब किसी ऑब्जेक्ट को कक्षा में बनाया जाता है, तो ऑब्जेक्ट में आंतरिक संदर्भ भी बनाया जाता है। यह 'यह' नहीं है। इस कीवर्ड के लिए
3.Example:
नमूना (int x) // Parameterized निर्माता {
इस।x = x; // वर्तमान क्लास इंस्टेंस वैरिएबल एक्स
}

संबंधित मुद्दे