查找 toString() 方法的所有用法

2022-09-04 03:22:59

我有一个巨大的项目,其中有一个类,在这个项目中到处都广泛使用。此类定义了输出大量信息的方法。我想定义另一个方法,比如说,用此方法调用替换所有调用 original 的实例。toString()toShortString()toString()

问题是有很多代码如下所示:

log.debug("Order issued: " + order);
log.debug("Loaded list of orders: " + orders);

其中 是此对象的实例,并且是此类对象的列表。orderorders

有没有办法找到所有此类事件?

欢迎任何建议。IDE是IntelliJ Idea,如果它很重要的话。


答案 1

我建议你修改本身来调用,而不是替换所有容易出错的地方(你肯定会错过一些)和一些非常难以替换的(例如,对象的 on a 总是只调用)。toString()System.out.println()ListOrdertoString()toString()toShortString()

将所有代码移动到另一个调用的函数中,然后在您认为需要详细表示对象的情况下使用此函数。toString()toLongString()StringOrder


答案 2

以下是在 IDEA 中查找所有显式(不会找到您显示的 2 个示例)调用的方法:toString()

  1. 在类中将方法标记为 .toString@Deprecated
  2. Analyze -> Run inspection by name->选择 。Deprecated API usage

它将列出任何已弃用的API的所有用法,其中当然包括您刚刚注释的API。不要忘记删除批注。toString


推荐