Задать вопрос
@PashaKrizskiy

Возможно ли реализовать паттерн проектирования «Singleton», используя не private конструктор?

Интересует возможность реализации данного паттерна на C# без private конструктора

----------------------------------------------------------------------------------------------------------
Расширил вопрос.
Возможно ли создать условие внутри конструктора, которое бы запрещало создание объектов
Вроде такого:
class Singleton
{
    private int countInstance;
    public Singleton()
    {
        lock (syncRoot) {
        if (!countInstance == 0) 
        { // код, запрещающий создание экземпляра 
        }
        else 
        {
            countInstanse = 1;
        }
        }
    }
}
  • Вопрос задан
  • 588 просмотров
Подписаться 3 Оценить 17 комментариев
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 2
    1 неделя
    Далее
Пригласить эксперта
Ответы на вопрос 1
yarosroman
@yarosroman Куратор тега C#
C# the best
Нет, конструктор делается приватным, чтобы только сам класс имел доступ к конструктору. А иначе, что синглтон может создавать кто угодно получается.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы