大规模重构 - 如何将 final 关键字添加到 Java 方法参数中

这可能是一个简单的问题:我如何大规模重构我的Java代码,使大部分方法参数成为“最终”?这是遵循我们的“检查风格”规则之一。我们有成千上万的Java文件,因此手动编辑所有这些文件对我们来说似乎不是一个可以接受的解决方案。

我在IntelliJ中没有找到任何这样的重构选项。有人知道任何可以提供帮助的工具吗?或者任何聪明的方法来实现这一目标?


答案 1

您可以使用IntelliJ的检查机制来实现以下目的:

  1. 导航到“按名称分析>运行检查”
  2. 搜索“局部变量或参数可以是最终的”警告
  3. 确保选中“报告方法参数”是唯一选中的选项。
  4. 选择树的根(它应该读取局部变量或参数可以是最终的”
  5. 单击 +,然后选择“使最终确定”。这应该在所有缺失的位置添加修饰符。ALTENTERfinal

完成此操作后,您可能希望在 IDE 中启用此检查,以便警告您不要犯进一步的错误:

  1. 导航到>文件设置>编辑器>检查”
  2. 搜索“局部变量或参数可以是最终的”警告
  3. 确保选中“报告方法参数”是唯一选中的选项。

答案 2

在IntelliJ中,您可以选中“使生成的局部变量成为最终变量”和“使生成的参数最终确定”选项。

在 IntelliJ 2017.3 中,它位于“首选项”->编辑器->代码样式->Java->代码生成选项卡中。

enter image description here


推荐