मैं प्रतिबिंब और एनोटेशन के साथ खेलने की कोशिश कर रहा हूं। किसी भी कारण से जब भी मैं किसी फ़ील्ड (या कक्षा या विधि) में एनोटेशन जोड़ता हूं, और फ़ील्ड को देखने के लिए प्रतिबिंब का उपयोग करता हूं, तो मुझे लगता है कि इसका annotations
फ़ील्ड शून्य है।प्रतिबिंबित करें। फ़ील्ड.नोटेशन हमेशा शून्य
उदाहरण के लिए, इस कोड:
public class Test {
public static void main(String[] args) throws NoSuchFieldException, SecurityException {
System.out.println(Test.class.getField("bl").getAnnotations().length);
}
@anno
public int bl;
public @interface anno {}
}
प्रिंट 0.
Btw, जावा सामान्य रूप में एनोटेशन की अनदेखी नहीं है, और जब (उदाहरण के लिए) मैं @Deprecated
एनोटेशन का उपयोग करें - ग्रहण यह पहचानता है और मुझे बताता है कि कक्षा बहिष्कृत है।
मैं ग्रहण इंडिगो और जावा एसई विकास किट 7 अपडेट का उपयोग कर रहा हूं 2. धन्यवाद!
skaffman - आप आदमी हैं !! – Ginandi
@ गिनंडी: आपसे ऐसा कहने में अच्छा लगा :) किसी ने अभी भी एक डाउनवोट के लायक विचार किया है, आपको लगता है ... – skaffman
@skaffman कृपया आप प्रतिधारण पर किराये पर प्रतिस्थापित कर सकते हैं –