2012-11-07 23 views
10

के रूप में एनोटेशन होने पर मूल्य है मेरे पास एक एनम है जो एनोटेशन लागू करता है और मुझे चेतावनी मिल रही है: एनोटेशन प्रकार ए को MyClass के लिए सुपरइंटरफेस के रूप में उपयोग नहीं किया जाना चाहिए।@SuppressWarnings मूल्य सुपरइंटरफेस

क्या @SuppressWarnings के लिए कोई मान है जो इस चेतावनी को संभालता है? मैं @SuppressWarnings ("all") का उपयोग नहीं करना चाहता, मैं उन सभी को दबाने से चेतावनी दूंगा।

मैं ग्रहण का उपयोग कर रहा हूं।

+1

क्या आप वाकई एक और एनोटेशन बढ़ाने की जरूरत है? कक्षाएं जैसे जेवीएम द्वारा एनोटेशन समर्थित नहीं हैं, इसलिए आप एक ही तरह की विरासत प्राप्त नहीं कर पाएंगे। –

+0

यह वास्तव में मेरा कोड नहीं है इसलिए मेरे पास इसमें बहुत कुछ नहीं है। मैं बस इसके साथ काम कर रहा हूं इसलिए मैं अव्यवस्था को कम करना चाहता था। – user1294431

+0

जेएक्सबी के इफेस एनोटेशन रीडर पर विचार करें - मुझे लगता है कि इसका एकमात्र उद्देश्य एनोटेशन को 'पहचानने' की अनुमति देना है जो "वहां नहीं हैं"। फिर आप सिंथेटिक एनोट बनाना चाहते हैं। उदाहरणों। प्रतिबिंब के बिना, सबसे आसान एनोटेशन इंटरफेस को लागू करना होगा। और फिर - आपको यह चेतावनी मिलती है। –

उत्तर

3

मेरा मानना ​​है कि @SuppressWarnings के लिए ऐसा कोई मूल्य नहीं है। यदि ऐसा कोई मूल्य था तो संकलक आपको चेतावनी के साथ इसका उपयोग करने पर एक संकेत देता।

चूंकि, यह अस्तित्व में नहीं है, इसका शायद यह अर्थ है कि आपके enum को एनोटेशन बढ़ाने का अच्छा विचार नहीं है।

और यदि आप अभी भी इस तरह जाना चाहते हैं तो मुझे लगता है कि @SuppressWarnings("all") आपके पास एकमात्र विकल्प है।

+0

धन्यवाद, मैंने जितना सोचा था। बस इसके बारे में निश्चित होना चाहता था। – user1294431