実行時に、メソッドが非推奨であることを知りたいと思っている人はなぜですか?いくつかの例を私に提供することはできますか?なぜ@deprecatedのRetentionPolicyはRUNTIMEですか?
答えて
あなたは@deprecatedがコンパイル段階(IDE、コンパイラ)でのみ関心があると仮定していますが、その情報が必要なイメージング計測シナリオには及ばないと思います。
例えば、IDEは廃止予定のメソッドの呼び出しサイト数を通知できますが、廃止予定のメソッドでアプリケーションが費やした時間の割合はどのように決定しますか?
良い質問です。私は説得力のあるシナリオを考え出しています。私が持っているのは、廃止予定のコードの使用を許可していないクラスローダーを使用するアプリケーションを想像できるということだけです。これにはRetentionPolicy.RUNTIME
が必要です。心に来て、私が持っているすべてです
...
カップル実用的な用途:Velocityで
は、カスタム任意の非推奨メソッドにVelocityテンプレートから実際の呼び出しをログに記録Uberspectorを持つことができ、ログを読むだけで、メソッドがどこで使用されているのかを確認することができます。あなたが管理者でないなら@Deprecated
クラスのインスタンス化を防ぐシステムを作ることが可能かもしれないので、あなたが.class
内容に基づいて、任意のクラスをインスタンス化禁止するセキュリティポリシーを持つことができますWicketで
。
の両方の点については、コンパイル時にチェックすることは可能です。依存性チェッカーは、あなたが上で言ったことを理解している場合は、確かに、トリックを行う必要があります – Ravisha
オブジェクトをインスタンス化して動作させるためのフレームワークとツールがいくつかあります。
たとえば、多くのJavaBean UIエディタは、ユーザーが設計しているUIを操作するときに、Beanのインスタンスを作成し、それらのインスタンスと対話します。
@Deprecatedアノテーションを実行時に使用できるようにすると、このようなツールでは、廃止予定のメソッド、イベント、ユーザーのプロパティにフラグを立てることができます。
- 1. @deprecated vs @Deprecated
- 2. なぜこのRELEASEはRUNTIME ERRORを生成しないのですか?
- 3. 「NoClassDefFoundError:scala/runtime/AbstractPartialFunction」でカスタム受信者が失敗するのはなぜですか?
- 4. setSelectedNavigationItem deprecated
- 5. deprecated notification.setLatestEventInfo
- 6. enum deprecated c#
- 7. Titanium.Ti.Media.VideoPlayer.movieControlMode DEPRECATED
- 8. すべてのAngular 2.0 DI APIはなぜ@deprecatedとマークされていますか?
- 9. ランタイムデバッグ後に私のプログラムがapi-ms-win-crt-runtime-l1-1-0.dllを要求するのはなぜですか?
- 10. deprecated sizeWithFont:メソッドに代わるものは何ですか?
- 11. deprecated android.hardware.camera.autofocusの代替フィルタは何ですか?
- 12. 溶接はJava SE Runtime環境かJava SEのコンテナですか?
- 13. RunTime複雑な再帰バイナリツリートラバーサル
- 14. RunTime Macで実行
- 15. Javaで@deprecatedと逆の内容
- 16. web.pyでruntimeを測定するには?
- 17. @Deprecated表記をインターフェイスでのみ使用する利点は何ですか?
- 18. Go言語のruntime-gdb.pyの役割は何ですか?
- 19. -static-link-runtime-shared-librariesを使用しないのはいつですか?
- 20. APR(Apache Portable Runtime)1.3と0.9の違いは何ですか?
- 21. Jackrabbit deprecated SearchIndex textFilterClasses属性
- 22. ブタ負荷:deprecatedプロパティfs.default.name
- 23. @Deprecatedアノテーションのコンパイル警告はありませんか?
- 24. または--runtime-config設定
- 25. Java Runtime DLL injection
- 26. Android RunTimeパーミッション
- 27. Eclipse RunTime NoClassDefFoundError
- 28. NoClassDefFoundError at runtime
- 29. NoClassDefFoundError on runtime
- 30. WPF Binding.ValidationRules at Runtime
RetentionPolicy.Classでもこれで十分です。 – Jorn