Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Подарки от программис'тов

27.07.22 13:39
Re: Подарки от программис'тов
 
alex445 коренной житель

Ладно, вот другой примерчик странных подарков. К чему может быть такое наследование?


public class Config : ConfigBase<Config>


Конструктора у Config нет. Но это значит, что у него есть дефолтный без параметров.


Внутри ConfigBase сидит статическое свойство


public static T Configuration { get ... ; set ... ;}


в котором под блокировкой (lock) организуется загрузка конфигурации в геттере.


Как я понимаю, любой Config имеет статическое свойство на самого себя... И что это даёт? Можно в бесконечном цикле самого себя опрашивать?


Я бы подумал, что это какая-то странная организация синглетона через наследование и параметр типа, но дефолтный-то конструктор не мешает насоздавать сколько угодно Config? Плюс сеттер публичный доступен. "Протекающий" синглетон какой-то.

 

Перейти на