Я пытаюсь изучить шаблон одноэлементного дизайна. Код выглядит следующим образом:
public class Model {
private static final Model INSTANCE = new Model();
public static void main(String[] args) {
Model.getInstance();
}
private Model(){
System.out.println("constructor");
}
public static Model getInstance(){
System.out.println("I hope to be printed first!");
return INSTANCE;
}
}
Я ожидаю, что код сначала напечатает I hope to be printed first!
, а затем пройдет через конструктор класса. но вывод кода обратный:
constructor
I hope to be printed first!
Я не могу понять, почему класс создается первым?
INSTANCE
лениво инициализировать. - person Sweeper   schedule 27.01.2020main
перед выполнениемgetInstance()
? - person alex   schedule 27.01.2020