为什么@deprecated的保留策略是运行时?

2022-09-03 07:19:16

为什么在运行时有人有兴趣知道一个方法已被弃用?有些人能给我一些例子吗?


答案 1

有一些框架和工具可以实例化对象以使用它们。

例如,许多 JavaBean UI 编辑器创建 Bean 的实例,并在用户操作他们正在设计的 UI 时与它们进行交互。

在运行时提供@Deprecated注释允许诸如此类的工具标记用户已弃用的方法,事件和属性。


答案 2

您假设@deprecated仅在编译阶段(IDE、编译器)中引起关注,但对于需要该信息的映像检测方案而言,这并不是一个延伸。

例如,IDE 可以告知您已弃用方法的调用站点数,但是您将如何确定应用程序在不推荐使用的方法中花费的时间百分比?


推荐