一次重命名许多Java类中的许多变量

我在一个相当大的Java项目(2500多个类)中工作,它使用旧的代码标准,其中所有成员变量都以“m_”为前缀(例如m_temperature)。 这已经没有理由了,我想摆脱它们,但是:

  1. 为了进行更改,我必须立即执行所有变量
  2. 它不能产生任何错误。

简单地将所有“m_variable”重命名为“变量”的第一种简单方法是不够的,因为这可能在已经存在的名为“variable”的变量和新重命名的变量之间产生名称冲突。

总而言之:如何重命名所有这些讨厌的成员变量而不会遇到麻烦,还有比上面提到的更多的问题吗?

是的,我知道IDE中的重构/重命名function,请记住我想立即对符合条件的所有变量进行更改,而不是右键单击变量并逐个重命名。

关于SC的一个问题是关于java中的大规模重构。 最好的答案是使用japvaparser并实现访问者进行实际的重构。 对于简单的重命名,这不应该是那么多工作。

下面怎么样: java变量的大规模重命名

通过Simulant

单击变量名称。

1:按[alt] + [shift] + [R]

2:输入新名称。

3:按[确定]确认。

– >将重命名此变量的所有实例。

回答你的第二个问题( 还有问题

  1. 我会避免全局变量。 支持封装 ,以便您可以本地化function。
  2. 我会实现一些unit testing ,以便您可以validation未来的更改。 目前,您唯一可用的检查是您的项目正确编译。

我意识到这两个都是现有项目中可能存在的大问题。 但值得寻找可能的痛点并首先处理这些痛点。

在这种情况下,重构工具将有所帮助。 重命名变量时,它会在所有相关位置重命名它,包括在不同的类文件中调用它。 执行此操作时,如果重命名的变量与现有名称匹配,它将提醒您。

但是我们必须为每个变量手动完成。

我不知道这是否可行。 但是我发现这个链接可以使用IntelliJ查找和替换项目中的所有出现。

http://www.jetbrains.com/idea/webhelp/finding-and-replacing-text-in-project.html

如果您使用的是eclispe IDE,则可以轻松完成。

脚步:

  1. 选择变量
  2. 右键单击它
  3. 点击重构
  4. 点击重命名

即使在netbeans您也可以按照相同的步骤操作。 IDE将查找引用和用法并将其全部替换。