gpt4 book ai didi

java - 标记类、方法等的间接用法

转载 作者:行者123 更新时间:2023-12-02 03:00:55 24 4
gpt4 key购买 nike

Is there a standard way in Java to mark classes, methods etc. that are used by other parts of the program in indirect ways (think: reflection) which are not discoverable by the usual search-functions of IDEs?

在一个特定的示例中,我有一堆带有数百个小型验证方法的类。验证基本上是通过反射列出这些类的所有方法并在给定对象上一一执行它们来进行的。 (比这更复杂,但这就是基本思想)现在,我的 IDE 可以理解地将每个方法标记为“未使用”,因为它们永远不会直接调用,仅通过反射调用。

类似的问题发生在程序的另一部分,其中驻留有几十个帮助程序类,其中一些几乎肯定未使用并且可以删除。但是:在极少数情况下,这些类的字段是通过反射访问的,IDE 的常用搜索功能无法找到这些用法(再次强调:这是非常可以理解的)。

我知道如果没有外部帮助,IDE 不可能解决这个问题。因此我的问题是是否已经有像注释这样的既定方法来清楚地标记这些情况。当然,我可以自己定义这样的注释,但我宁愿采用公认的标准(如果存在)。是否有一个 IDE 可以识别它们并在我做类似的事情时自动警告我?

最佳答案

不,没有一种标准方法来标记间接控制流(反射、Android 意图、回调等)。

有些工具提供了自己的方法来分析间接控制流。

例如,Checker Frameworkreflection resolution使用 @MethodVal注释来指示反射调用的可能目标。它还具有指示 Android intents 的方法.

关于java - 标记类、方法等的间接用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42375707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com