Вкратце, Singleton - это шаблон проектирования, используемый для обеспечения того, чтобы только один экземпляр чего-либо когда-либо создавался в данной области видимости.
Этот шаблон выполняется с помощью нескольких основных концепций:
- создание статического экземпляра некоторого объекта
- создание частного конструктора
- запрещениекласс, который будет расширен другим (запечатанным)
- , предоставляя статический метод, который возвращает экземпляр статического объекта
Приведенный вами пример кода является учебным примером шаблона Singleton.