2012-06-28 17 views
24

जावा में तरीकों के बारे में लिखते समय (यानी फ़ोरम, मेलिंग सूचियां, समस्या ट्रैकर्स इत्यादि) कई लोग जावा के मूल . ऑपरेटर के बजाय '#' प्रतीक का उपयोग करके कक्षा के नाम से विधि नाम को अलग करते हैं; उदाहरण के लिए, Object.toString के बजाय लोग Object#toString का संदर्भ लें। यह वाक्यविन्यास कहां से आता है?कुछ लोग पत्राचार में Class.method की बजाय कक्षा # विधि का उपयोग क्यों करते हैं?

+2

डॉट नोटेशन कोड के रूप में देखा जा सकता है, जहां ऑब्जेक्ट.toString 'ऑब्जेक्ट' में एक उदाहरण होगा या अन्यथा 'toString' एक स्थिर विधि होगी। डैश नोटेशन जावाडोक है और यह स्पष्ट है। – maksimov

उत्तर

21

यह किसी अन्य वर्ग की विधि से लिंक करते समय जावाडोक टिप्पणियों में उपयोग किया गया नोटेशन है।

संपादित

टिप्पणी में प्रदान की अतिरिक्त जानकारी एकत्रित करने के लिए:

  • @Hugo नोट बदले में # अंकन आता है कि HTML एंकर से
  • @maksimov बताते हैं कि Object.method जावा वाक्य रचना है स्थैतिक तरीकों को कॉल करने के लिए, जो

अद्यतन

जावा 8 विधि संदर्भों के लिए एक नया वाक्यविन्यास लाता है, जो अब अधिक लोकप्रिय लगता है - इसलिए Object#toString अब Object::toString लिखा जा सकता है।

+4

यह बदले में, HTML एंकर से आता है, जो इस नोटेशन का उपयोग करके दर्शाए जाते हैं, क्योंकि प्रत्येक विधि एक एंकर है जो HTML जेवाडोक उत्पन्न होता है। – WhyNotHugo

+0

सब समझ में आता है। मैं अब इसका उपयोग करना शुरू कर सकता हूं, लेकिन मुझे यह मानना ​​है कि यह काफी बदसूरत है और मुझे इसे पढ़ने में मुश्किल लगता है। लेकिन यह स्थिर विधि आमंत्रण के मामले में असंबद्धता प्रदान करता है। –

+0

लेकिन अगर ऑब्जेक्ट लोअरकेस है तो क्या होगा? –

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

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