Java中是否有一种标准的方法来标记程序的其他部分以间接方式使用的类,方法等(思考:反射),IDE的常规搜索功能无法发现它们?
在一个特定的例子中,我有一堆带有几百种小验证方法的类。基本上通过反射列出这些类的所有方法并在给定对象上逐个执行验证。 (它比这更复杂,但这是潜在的想法) 现在我的IDE可以理解地将这些方法的每个人都标记为“未使用”,因为它们永远不会直接调用,只能通过反射。
类似的问题发生在程序的另一部分,其中有几十个辅助类,其中一些几乎肯定未使用,可以删除。但是:在极少数情况下,这些类的字段是通过反射访问的,IDE的常用搜索功能无法找到这些用法(再次:非常可以理解)。
我知道如果没有外界的帮助,IDE无法解决这个问题。因此,我的问题是,是否已经建立了类似注释的方法,例如清楚地标记这些案例。当然我自己可以定义这样的注释,但如果存在,我宁愿选择一个公认的标准。 是否有一个IDE可以识别它们并在我做这样的事情时自动发出警告?
答案 0 :(得分:1)
您通常使用{{1}}注释这些类以消除IDE警告
答案 1 :(得分:1)
不,没有标准方式标记间接控制流(反射,Android意图,回调等)。
有一些工具可以提供自己的方法来分析间接控制流程。
例如,Checker Framework' reflection resolution使用@MethodVal
注释来指示反射调用的可能目标。它还有表达Android intents的方法。