16
मैं अपने आवेदन में एनोटेशन का उपयोग करना चाहता हूं। इस कारण से मैं एनोटेशन के लिए "हैलो दुनिया" बनाएं:getAnnotations() खाली है
उदाहरण इस प्रकार है:
public class HelloAnnotation
{
@Foo(bar = "Hello World !")
public String str;
public static void main(final String[] args) throws Exception
{
System.out.println(HelloAnnotation.class.getField("str").getAnnotations().length);
}
}
और यह व्याख्या है:
import java.lang.annotation.ElementType;
import java.lang.annotation.Target;
@Target(ElementType.FIELD)
public @interface Foo
{
public String doTestTarget();
}
मेरे समस्या अब है कि मुख्य में getAnnotations() है खाली। मेरे कोड में क्या गलत है?
@Retention(RetentionPolicy.RUNTIME)
जावाडोक से @Retention के लिए: RetentionPolicy.CLASS
को जावाडोक से RetentionPolicy के लिए
अवधारण नीति चूक:
ठीक है, एक समस्या यह है कि आप एक एनोटेशन नामित '@ Foo' का उपयोग है, लेकिन आप एक एनोटेशन' @ Test_Target' बुलाया परिभाषित करते हैं। यह आमतौर पर सबसे अच्छा होता है यदि आप संकलित कोड पोस्ट करते हैं (हालांकि * डेविड ग्रांट * ने आपको वैसे भी जवाब दिया)। – parsifal
हाँ यकीन है, thx, मैं इसे पहले से संपादित कर रहा हूँ। वह कॉपी और पेस्ट गलती थी :) –