मैं अपनी एक विधि "पदावनत" करना चाहूँगा = जिसका अब उपयोग न हो।
लेकिन फिर भी मैं इसे अपने एपीआई में रखना चाहूंगा। मैं सिर्फ उस पद्धति का उपयोग करके किसी को "चेतावनी" दिखाना चाहता हूं।
मैं उसे कैसे प्राप्त कर सकता हूं?
मैं अपनी एक विधि "पदावनत" करना चाहूँगा = जिसका अब उपयोग न हो।
लेकिन फिर भी मैं इसे अपने एपीआई में रखना चाहूंगा। मैं सिर्फ उस पद्धति का उपयोग करके किसी को "चेतावनी" दिखाना चाहता हूं।
मैं उसे कैसे प्राप्त कर सकता हूं?
जवाबों:
@Deprecated
विधि पर प्रयोग करें । जावास्क्रिप्ट क्षेत्र स्पष्ट करने के बारे में मत भूलना:
/**
* Does some thing in old style.
*
* @deprecated use {@link #new()} instead.
*/
@Deprecated
public void old() {
// ...
}
reason
""
@deprecated
टिप्पणी में संदेश @Deprecated
(सभी को ठीक करने के लिए एक स्थान) को जोड़ा जा सकता है ...
@Deprecated
एनोटेशन और @deprecated
JavaDoc टैग दोनों का उपयोग करें ।
@deprecated
JavaDoc टैग प्रलेखन प्रयोजनों के लिए प्रयोग किया जाता है।
@Deprecated
एनोटेशन संकलक कि विधि बहिष्कृत है निर्देश देता है। यह इस विषय पर सन / ओराक्लेस दस्तावेज़ में क्या कहता है:
@Deprecated
किसी वर्ग, विधि या क्षेत्र को हटाने के लिए एनोटेशन का उपयोग करना सुनिश्चित करता है कि सभी कंपाइलर उस प्रोग्राम एलिमेंट का उपयोग करते समय चेतावनी जारी करेंगे। इसके विपरीत, इस बात की कोई गारंटी नहीं है कि सभी कंपाइलर हमेशा@deprecated
जावाडॉक टैग के आधार पर चेतावनी जारी करेंगे , हालांकि वर्तमान में सन कंपाइलर ऐसा करते हैं। अन्य संकलक इस तरह की चेतावनी जारी नहीं कर सकते हैं। इस प्रकार,@Deprecated
चेतावनी उत्पन्न करने के लिए एनोटेशन का उपयोग करना अधिक पोर्टेबल है जो कि@deprecated
जावाडॉक टैग पर निर्भर है ।
आप एपीआई को कैसे और कब डिप्रेस करें , इसका पूरा दस्तावेज देख सकते हैं
@deprecated
जावाडॉक टैग (जावा 4- में) के साथ एक विधि को चिह्नित किया, तो संकलक ने विधि (वर्ग, क्षेत्र) को पदावनत के रूप में चिह्नित किया और आईडीई ने चेतावनी दी, तब भी जब कोई स्रोत उपलब्ध नहीं था।
चूंकि कुछ मामूली स्पष्टीकरण गायब थे
@Deprecated
इस तरह विधि पर एनोटेशन का उपयोग करें
/**
* @param basePrice
*
* @deprecated reason this method is deprecated <br/>
* {will be removed in next version} <br/>
* use {@link #setPurchasePrice()} instead like this:
*
*
* <blockquote><pre>
* getProduct().setPurchasePrice(200)
* </pre></blockquote>
*
*/
@Deprecated
public void setBaseprice(int basePrice) {
}
<br/>
{@link #setPurchasePrice()}
आप कर सकते हैं दो चीजें हैं:
@Deprecated
विधि एनोटेशन , और@deprecated
विधि के javadoc में एक टैग जोड़ेंआपको दोनों करना चाहिए !
इस विषय पर जावा प्रलेखन का हवाला देते हुए :
J2SE 5.0 के साथ शुरू, आप @Deprecated एनोटेशन का उपयोग करके एक वर्ग, विधि या क्षेत्र को दर्शाते हैं। इसके अतिरिक्त, आप @deprecated Javadoc टैग डेवलपर्स को बता सकते हैं कि इसके बजाय क्या उपयोग करना है।
एनोटेशन का उपयोग जावा कंपाइलर को तब उत्पन्न करने के लिए चेतावनी उत्पन्न करता है जब पदावनत वर्ग, विधि या क्षेत्र का उपयोग किया जाता है। कंपाइलर डिप्रेसेशन चेतावनियों को दबा देता है अगर एक डीग्रेडेड कॉम्पटिशन यूनिट एक डिप्रेस्ड क्लास, मेथड या फील्ड का उपयोग करता है। यह आपको चेतावनी पैदा किए बिना विरासत एपीआई बनाने में सक्षम बनाता है।
आपको जावाडॉक @deprecated टैग का उपयोग करने के लिए दृढ़ता से अनुशंसा की जाती है, जिसमें उपयुक्त टिप्पणियां बताई गई हैं कि नए एपीआई का उपयोग कैसे करें। यह सुनिश्चित करता है कि डेवलपर्स के पास पुराने एपीआई से नई एपीआई तक एक काम करने योग्य प्रवासन पथ होगा
अपनी पद्धति के लिए एनोटेशन का उपयोग करें @Deprecated
, और आपको अपने javadocs में भी इसका उल्लेख करना चाहिए।