2011-09-12 11 views
24

मैं कुछ को हटाना चाहता हूं, लेकिन सभी संभावित गणना मान नहीं।क्या जावा एनम के कुछ मूल्यों को हटाना संभव है और यदि हां, तो कैसे?

+0

देखें [एनोटेशन ट्यूटोरियल] (http://download.oracle.com/javase/tutorial/java/javaOO/annotations.html)। – mre

+4

अपने enum मानों में से एक के सामने "@Deprecated" टाइप करना कितना मुश्किल है? – Bombe

+10

@ बॉम्बे कृपया अपनी आंखों में सरल कुछ जानने के लिए नए प्रोग्रामर को ज्वाला न करें। – Jesper

उत्तर

45

हां, उन पर @ डेपरेटेड एनोटेशन डालें। उदाहरण के लिए:

enum Status { 
    OK, 
    ERROR, 

    @Deprecated 
    PROBLEM 
} 

तुम भी एक JavaDoc @deprecated टैग जोड़ सकते हैं यह दस्तावेज़ के लिए:

enum Status { 
    OK, 
    ERROR, 

    /** 
    * @deprecated Use ERROR instead. 
    */ 
    @Deprecated 
    PROBLEM 
} 
+2

मैंने हमेशा (अच्छी तरह से, कभी-कभी) आश्चर्यचकित किया है कि '@ बहिष्कृत 'एनोटेशन प्रकार उस उद्देश्य के लिए' मान' की अनुमति क्यों नहीं देता है। – Barend

+1

"इस मान का उपयोग न करें" एक बेकार टिप्पणी है। यह बहिष्कृत एनोटेशन के अलावा कुछ भी नहीं कहता है। एक बहिष्करण टिप्पणी को बताया जाना चाहिए कि मूल्य क्या बदलता है। –

+0

@ जेबी निजेट यह सिद्धांत का प्रदर्शन करने के लिए केवल संभोग था। मैंने इसे बदल दिया। – Jesper

4

बस इसे ग्रहण करने की कोशिश की, यह काम करता है (यदि आप इसे की कोशिश नहीं की?):

public class Test { 

    public static void main(String[] arg) { 

     System.err.println(EnumTest.A); 
     System.err.println(EnumTest.B); 

    } 

    public static enum EnumTest { 
     A, @Deprecated B, C, D, E; 
    } 

} 
42
public enum Characters { 
    STAN, 
    KYLE, 
    CARTMAN, 
    @Deprecated KENNY 
} 
+1

+1, दक्षिण पार्क संदर्भ के लिए – mre

+31

ओह मेरे भगवान! उन्होंने निंदा की केनी! केनी को हटाने के लिए – Bombe

+0

+1 फिर से ... – home

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

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