나는 전역 변수이며 주로 변경되지 않는 여러 변수가 있습니다. 때때로 (몇 달에 한 번) 나는 그들을 바꾸고 싶다.글로벌 구성 변수를 정적으로 캡슐화 하시겠습니까?
이들은 DB에 저장됩니다.
문제점 : 정적 변수를 변경하면 다른 서비스에서도 이전 값을 사용합니다. 내가 뭘 잘못하고 있니?
class Config {
public static Default DEFAULTS = new Default();
//several other static defaults
public static in DIGIT = DEFAULTS.getDigit();
}
class Default() {
private int digit = 0;
//get+set
}
class Service() {
updateDefaults() {
Config.DEFAULTS.setDigit(2);
dao.update(Config.DEFAULTS);
}
}
문제 : Config.DIGIT;
를 사용하는 다른 서비스가 여전히 digit = 0
의 이전 기본값을 사용합니다.
그는 이미 자신의 무의미한 설명을 삭제했습니다 (단지 '정적'이 어떻게 작동하는지 완전히 이해하지 못했음을 보여줍니다). 내 의견도 삭제하겠습니다. – BalusC