【问题标题】:Refactor my Java code to replace attribute access to getters and setters重构我的 Java 代码以替换对 getter 和 setter 的属性访问
【发布时间】:2020-12-08 05:57:58
【问题描述】:

我刚刚重构了一个旧的 Java 库,并用 setter 和 getter 替换了所有公共属性。 现在,有大量代码可以直接访问这些旧属性。

有没有人知道一种工具可以遍历所有数百个类并重构它们以取代对 setter 或 getter 的直接访问?

例如:

old.attr = "Hello!";
String c = old.attr;

收件人:

old.setAttr("Hello!");
String c = old.getAttr();

周围有什么东西可以发挥这种魔力吗?

提前致谢,

胡安

【问题讨论】:

  • 不是 100% 确定这一点,但 Eclipse 和 IntelliJ 都有智能重构工具,可能可以用方法调用代替直接 getter/setter 访问。因此,我建议您首先尝试使用 IDE 中的工具。
  • 谢谢,看我对浩宇的评论。

标签: java refactoring encapsulation utilities


【解决方案1】:

如果你使用 IntelliJ 作为你的 IDE,你可以这样做:

右键公共属性->重构->封装字段

【讨论】:

  • 感谢您的回答,但字段已经封装。我必须为数百个班级的数千个领域这样做。我需要一种系统/批量处理方法。
猜你喜欢
  • 1970-01-01
  • 2018-11-25
  • 1970-01-01
  • 1970-01-01
  • 2017-06-13
  • 2019-08-14
  • 1970-01-01
  • 2015-09-30
  • 1970-01-01
相关资源
最近更新 更多