簡體   English   中英

Java-獲取注釋始終為null

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM