खोज…


एक संदर्भ प्रकार को तत्काल करना

Object obj = new Object(); // Note the 'new' keyword

कहाँ पे:

  • Object एक संदर्भ प्रकार है।
  • obj वह चर है जिसमें नए संदर्भ को संग्रहीत करना है।
  • Object() के एक निर्माता के लिए कॉल है Object

क्या होता है:

  • मेमोरी में स्पेस ऑब्जेक्ट के लिए आवंटित किया जाता है।
  • कंस्ट्रक्टर Object() को उस मेमोरी स्पेस को इनिशियलाइज़ करने के लिए कहा जाता है।
  • मेमोरी एड्रेस को obj में संग्रहित किया जाता है, ताकि यह नव निर्मित वस्तु का संदर्भ दे

यह आदिम से अलग है:

int i = 10;

जहां वास्तविक मूल्य 10 को i में संग्रहित किया जाता है।

अपसंदर्भन

के साथ Dereferencing होता है . ऑपरेटर:

Object obj = new Object();
String text = obj.toString(); // 'obj' is dereferenced.

Dereferencing स्मृति पते को एक संदर्भ में संग्रहीत करता है , स्मृति में उस स्थान पर जहां वास्तविक ऑब्जेक्ट रहता है। जब कोई ऑब्जेक्ट पाया गया है, तो अनुरोधित विधि को (इस मामले में toString ) कहा जाता है।


जब किसी संदर्भ में मान null , तो NullPointerException में dereferencing परिणाम:

Object obj = null;
obj.toString(); // Throws a NullpointerException when this statement is executed.

null मान के अभाव को इंगित करता है, अर्थात मेमोरी एड्रेस के बाद कहीं नहीं जाता है। इसलिए ऐसी कोई वस्तु नहीं है जिस पर अनुरोधित विधि को बुलाया जा सके।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow