如何重构错误移动字段的类型?

时间:2018-11-18 10:48:14

标签: java refactoring simplify

我正在阅读代码气味中的错误类型,并试图在不适当的亲密关系类别中进行理解,

我找到了解决方案移动字段。有人可以举例说明并向我解释该解决方案“移动领域”吗?

我在https:refactoring.guru/move-field中发现了一些东西,但我仍然不明白。

1 个答案:

答案 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;
  }
}