Java アノテーション値の動的生成
この質問では、Java アノテーションの値を動的に生成するという課題について説明します。メソッドから派生した値を持つクラスですが、生成された静的な最終値を使用しようとするとエラーが発生します。
コンパイラは、エラー メッセージに従って、アノテーションの属性値が定数式である必要があるという要件を強制します。 : 「注釈属性 MyInterface.aString の値は定数式である必要があります。」 この制限は、ランタイム注釈がコンパイル中に評価され、生成された値はその時点では利用できないという事実に由来しています。
残念ながら、この問題方法に対する既成の解決策はありません。 RetentionPolicy.RUNTIME アノテーションの場合、コンパイラーはコンパイル時にアノテーションのメタデータを評価しますが、GENERIC_GENERATED_NAME はコンパイル時にまだ不明です。同時に、RetentionPolicy.SOURCE アノテーションはコンパイル後に破棄されるため、これらの生成された値は認識されません。
以上が以下に、提供されたコンテンツに適合する質問ベースの記事タイトルをいくつか示します。 問題に直接対処する: * Java アノテーション: ランタイム アノテーションの値を動的に生成するにはどうすればよいですか? *キャンヨーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。