[英]Java - get annotation is always null
我是批注的新手,我FXMLController
自定義批注FXMLController
批注的FXMLController
,將這些類發送到工廠以從批注中獲取值,但始終為FXMLController
注釋:
public @interface FXMLController {
String value() default "";
}
用法:
@FXMLController(value=CommonConstants.SPLASH_SCREEN)
public class SplashScreenController{ ....... )
獲得價值:
Annotation annotation = controller.getAnnotation(FXMLController.class);
FXMLController fxmlController = (FXMLController) annotation;
我猜您忘了將注釋標記為@Retention(RetentionPolicy.RUNTIME)
編輯:實際上,您的注釋應如下所示:
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documentedpublic @interface FXMLController {
String value() default "";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.