클래스를 싱글턴으로 만들면 이를 사용하는 클라이언트를 테스트하기 어려워질 수 있다
public class Elvis {
public static final Elvis INSTANCE = new Elivs();
private Elvis() {...}
public void leaveTheBuilding() {...}
}
public class Elvis {
public static final Elvis INSTANCE = new Elivs();
private Elvis() {...}
public static Elvis getInstance() { return INSTANCE;}
public void leaveTheBuilding() {...}
}
public enum Elvis {
INSTANCE;
public void leaveTheBuilding() {...}
}