我正在阅读代码气味中的错误类型,并试图在不适当的亲密关系类别中进行理解,
我找到了解决方案移动字段。有人可以举例说明并向我解释该解决方案“移动领域”吗?
我在https:refactoring.guru/move-field中发现了一些东西,但我仍然不明白。
答案 0 :(得分:1)
例如,字段MOVE_ME
仅在不同的类(MyRealUssage)中使用。因此您可以移动它:
public class Unused {
public String moveMe = "This is used only in other classes"
}
public class MyRealUssage {
public static void main(String[] args) {
System.out.println(new Unused().moveMe);
}
}
移动字段将更新有效的字段位置:
public class Unused {
}
public class MyRealUssage {
public String moveMe = "This is used only in other classes";
public static void main(String[] args) {
System.out.println(new MyRealUssage().moveMe);
}
}
显然,更好的代码还将删除未使用的Unused
并将字段使用getter,就像
public class MyRealUssage {
public String moveMe = "This is now used only this class";
public static void main(String[] args) {
System.out.println(getMoveMe());
}
public String getMoveMe() {
return moveMe;
}
}