1. ホーム
  2. java

[解決済み] アノテーションの保存方法の違いはどのように影響しますか?

2022-04-21 11:08:43

質問

の実用的な違いについて、どなたかわかりやすく説明していただけませんか? java.lang.annotation.RetentionPolicy 定数 SOURCE , CLASS および RUNTIME ?

また、"retaining annotation"というフレーズの意味もよくわからないのですが。

どのように解決するのですか?

<ブロッククオート
  • RetentionPolicy.SOURCE : 途中で破棄 を使用すると、コンパイル時に これらのアノテーションは はコンパイル後に何の意味もなさない。 に書き込まれることはない。 バイトコード

    @Override , @SuppressWarnings

  • RetentionPolicy.CLASS : で破棄します。 クラスのロードを行います。をするときに便利。 バイトコードレベルの後処理を行う。 少し意外なことに、これは がデフォルトです。

  • RetentionPolicy.RUNTIME : は使用しないでください。 を破棄します。アノテーションは を実行時にリフレクションできるようにする。 例 @Deprecated

出典 古いURLはもう死んでいます <ストライク ハンターメタ に置き換え、さらに ハンターメタ-2-098036 . 万が一、これでもダウンした場合に備えて、ページの画像をアップロードしています。

画像 (右クリックで「新しいタブ/ウィンドウで画像を開く」を選択)