2008-10-22 18 views
10

में इंटरफ़ेस कार्यान्वयन के लिए @ ओवरराइड एनोटेशन के लिए चेतावनी जोड़ें JDK1.6.0_10 का उपयोग करते हुए ग्रहण 3.4.1 में मैं एक त्रुटि विधि को लागू करने वाली विधि पर अनुपलब्ध @Override एनोटेशन पर चेतावनी कैसे सक्रिय कर सकता हूं?ग्रहण

प्राथमिकताएं विंडो में इस विकल्प:

जावा> संकलक> त्रुटियों/चेतावनी> एनोटेशन> गुम '@Override' एनोटेशन

तरीकों पर भी टिप्पणियां लापता के लिए ठीक काम करता है कि ओवरराइड एक सुपरक्लास विधि, लेकिन यह इंटरफ़ेस विधियों के लिए कुछ भी नहीं करता है।

+1

जावा 5 और जावा 6 इंटरफेस कार्यान्वयन पर @Override टिप्पणियों के बारे में अलग अलग उम्मीदें हैं। मुझे याद नहीं है कि यह ग्रहण को कैसे प्रभावित करता है, लेकिन मुझे पता है कि यह करता है। –

+0

मुझे इसका उल्लेख करना चाहिए था। प्रश्न में जावा (6) का संस्करण जोड़ा गया। –

उत्तर

10

ग्रहण 3.4.1 में यह संभव नहीं है। यह known issue है। अधिक जानकारी के लिए यह बग रिपोर्ट पेज देखें।

+0

क्या यह पहले से ही तय नहीं है? – Pacerier

0

शायद मुझे कुछ याद आ रहा है लेकिन कार्यान्वयन कक्षाओं द्वारा इंटरफ़ेस विधियों को पहले ही लागू करने की आवश्यकता है।

इंटरफ़ेस पूरी तरह कार्यान्वित नहीं होने पर संकलक एक त्रुटि उत्पन्न करेगा।

+0

हां, लेकिन आप अभी भी यह चाहते हैं। देखें http://stackoverflow.com/questions/212614/should-a-method-that-implements-an-interface-method-be-annotated-with-override –

+0

आह हाँ, सूचक के लिए धन्यवाद। यह याद रखना चाहिए कि मैक ओएसएक्स पर अभी भी जावा 1.5 पर है :-) – fhe

2

बेले मैंने जो अन्य धागे में कहा था। स्पष्ट रूप से यह एक कंपाइलर विकल्प नहीं है, लेकिन जावा संगतता संस्करण समस्या: यदि आपका संगतता संस्करण 5 है, तो आप इंटरफ़ेस कार्यान्वयन विधियों को एनोटेट करने में सक्षम नहीं होंगे। यदि आपका संगतता संस्करण 6 है, तो आप सक्षम होंगे।

हालांकि मुझे नहीं लगता कि वास्तव में एक क्रिया उत्पन्न करने के लिए ग्रहण को मजबूर करने का एक तरीका है यदि आप प्रत्येक लागू विधि को एनोटेट नहीं करते हैं। this page से:

लापता '@Override' एनोटेशन: जब भी यह एक तरीका है एक और कार्यान्वित विधि अधिभावी का सामना करना पड़ता सक्षम होने पर, संकलक एक त्रुटि या एक चेतावनी जारी करेगा, और '@Override' एनोटेशन याद आ रही है।

+0

मैं जावा 6 का उपयोग करता हूं (यह स्पष्ट करने के लिए प्रश्न संपादित किया गया था। पहले ऐसा करना चाहिए था।) –

+0

क्या आपको पता है कि यह आजकल ग्रहण किया जा सकता है या नहीं 4.4.1? –

1

1.5 के बजाय 1.6 की संगतता सेटिंग मेरे लिए काम करती है: वेब डेवलपर्स के लिए जावा ईई आईडीई ग्रहण करें।

बिल्ड आईडी: 20100218-1602