如何重构一种错误移动字段?
How can I refactor a type of error move field?
我正在阅读 Code Smells 中的错误类型,并试图在不适当的亲密类别中理解,
我找到了移动字段的解决方案。有人可以举例说明并向我解释该解决方案 "Move field" 吗?
我在 https:refactoring.guru/move-field 中找到了一些东西,但我还是不明白。
例如,字段 MOVE_ME
仅用于不同的 class (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;
}
}
我正在阅读 Code Smells 中的错误类型,并试图在不适当的亲密类别中理解,
我找到了移动字段的解决方案。有人可以举例说明并向我解释该解决方案 "Move field" 吗?
我在 https:refactoring.guru/move-field 中找到了一些东西,但我还是不明白。
例如,字段 MOVE_ME
仅用于不同的 class (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;
}
}