2016-05-05 2 views

ответ

4

Этих две вещей являются касательными, что является скажем, что он не связан с другим.

  • Запечатанные классы не могут быть унаследованы
  • Классы с частными застройщиками не может быть intantiated публично.

Так что причина использовать закрытый конструктор в запечатанном классе

Вполне возможно, реализацию Singleton. Нет смысла наследовать его (так что его sealed), и вы не хотите, чтобы разработчики создавали экземпляры экземпляров Singleton.

+0

Это не может быть одноэлементный, если класс имеет фабричный метод создания новых экземпляров. – TomTom

+0

@TomTom, если это фабрика, вам понадобятся некоторые средства создания экземпляра. – Jamiec

+0

+1, просто заметка, в старом коде, который я видел, закрытый класс с частным конструктором используется для статического класса (эта версия 1 из C# отсутствует). –

Смежные вопросы