что у вас есть перечислимую синглтон:Инстанцирование и используя перечислимую одноплодной
public enum Elvis {
INSTANCE;
private int age;
private Elvis() { age = 42; }
public int getAge() { return age; }
public void leaveTheBuilding() { System.out.println("I'm outta here."); }
}
Вопрос: как вы затем использовать его? Является ли это так:
int a = Elvis.INSTANCE.getAge();
Elvis.INSTANCE.leaveTheBuilding();
// and so on, using Elvis.INSTANCE
или это предпочтительнее создать его экземпляр «явно», а затем использовать этот экземпляр, например, так:
Elvis elvis = Elvis.INSTANCE;
int a = elvis.getAge();
elvis.leaveTheBuilding();
// and so on, using elvis
Я соблазн использовать последний, чтобы избежать имея уродский .INSTANCE
обозначение везде. Но есть ли недостаток в этом? (Помимо одной дополнительной строки кода для создания экземпляра.)