아무곳에서나 변경될 수 있다는 문제
어떤 코드로 인해 값이 변경되는지 파악하기 어려움
클래스 변수 (필드)도 비슷한 문제를 겪음
public static 을 사용하는 변수들의 접근제한자를 private 으로 변경하고 getter, setter 생성
class Refactoring {
public static Integer targetTemperature = 70;
public static Boolean heating = true;
public static Boolean cooling = false;
public static Boolean fahrenheit = true;
}
class Refactoring {
private static Integer targetTemperature = 70;
private static Boolean heating = true;
private static Boolean cooling = false;
private static Boolean fahrenheit = true;
// ... getter, setter 생성
}