2011-03-09 11 views
11

मैं अनावश्यक जावाडोक टिप्पणियां लिखना नहीं चाहता हूं। जैसा कि आप देख सकते हैं, @param x एक तरह से अनावश्यक है। से कक्षा B से @param x में A में संदर्भ सेट करने के लिए कोई जावाड मार्कअप है या क्या मुझे इसे छोड़ने की अनुमति है?किसी अन्य विधि से Javadoc संदर्भ param

/** 
* Class A constructor 
* 
* @param x position on x-axis 
*/ 
public A(final int x) { 
    this.x = x; 
} 

/** 
* Class B constructor 
* 
* @param x position on x-axis 
* @param y position on y-axis 
*/ 
public B(final int x, final int y) { 
    super(x); 
    this.y = y 
} 
+0

मैं एक कदम वापस ले जाऊंगा और पूछूंगा कि आप पैरामीटर दस्तावेज क्यों कर रहे हैं जो स्पष्ट अर्थ प्रतीत होता है। यदि कोड आपके द्वारा चुने गए नामों के आधार पर स्वयं-दस्तावेज है, तो जावाडॉक काफी हद तक अप्रासंगिक है। –

+0

@ जॉन यह चित्रण के लिए केवल एक न्यूनतम उदाहरण है। – Matthias

+0

अपने आप को ध्यान दें: [{@inheritDoc}] (http://docs.oracle.com/javase/1.4.2/docs/tooldocs/windows/javadoc.html#inheritingcomments) कम से कम एक ओवरराइड विधि के एक दस्तावेज़ की प्रतिलिपि बनाने की अनुमति देता है । – Matthias

उत्तर

3

आप इसे छोड़ सकते हैं नहीं, javadoc स्मार्ट नहीं है, यह सिर्फ टिप्पणियों को पार्स करता है, वह यह नहीं कह सकते कि बी निर्माता के लिए x पैरामीटर से एक निर्माता भले ही एक ही है वहाँ खेल में विरासत है।

मुझे नहीं लगता कि यह "कारक" करने का कोई तरीका है। आपको बस उन सभी को लिखना होगा, क्षमा करें ...

1

विधियों के साथ इसे कार्य करना चाहिए: यदि आप किसी विधि को ओवरराइट या कार्यान्वित करते हैं, तो पैरामीटर कॉपी नहीं किए जाने पर कॉपी किए जाते हैं।

रचनाकारों को विरासत में नहीं मिला है, और अन्य पैरामीटर प्रकारों के साथ एक कन्स्ट्रक्टर के लिए भी कम है। जावाडोक को यह जानने का कोई तरीका नहीं है कि आप पैरामीटर को किसी अन्य निर्माता को पास करते हैं, क्योंकि यह विधियों/रचनाकारों की सामग्री की व्याख्या नहीं करता है, केवल बाहरी इंटरफ़ेस।

तो, मुझे लगता है कि आप भाग्य से बाहर हैं, अगर आप अपना खुद का डॉकलेट नहीं लिखना चाहते हैं या मानक डॉकलेट बदलना नहीं चाहते हैं (और फिर भी आपको किसी भी तरह से कन्स्ट्रक्टर को पैरामीटर प्राप्त करने के लिए कहना होगा)। (यह एक उपयोगी वर्ग होगा, एक ही कक्षा में कई समान तरीकों के लिए, मुझे लगता है।)

1

यदि आप एक मूल विधि को ओवरराइड कर रहे हैं, यदि आप जवाडोक को शामिल नहीं करते हैं तो अधिकांश आईडीई जवाडोक दिखाएंगे इसके बजाय मूल विधि। अन्यथा javadoc वाक्यविन्यास में चर को परिभाषित/संदर्भित करने का कोई तरीका नहीं है।

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