Вход на сайт
Visual Studio 15 SP 1
4169 просмотров
Перейти к просмотру всей ветки
в ответ dymanoid 13.07.16 22:01
NP.
public class A
{
String _name;
protected A(String pName) { name = pName; }
}
public class B : A
{
protected B(string pName) : base(pName) {}
До этого момента все ясно и понятно
- два класса с защищенными конструкторами - не будут лепится как попало
- один наследуется от другого и может получить доступ к конструктору базового.
public static readonly A Inst = new A("The Name");
}
А вот последняя строка поставила меня в тупик.
Планировалось, что будет вызван конструктор (как любой protected method) базового класса.
Получился, однако, облом - нет доступа к защищенному(!) конструктору... в наследнике.
Что Я там немножко нарушаю парадигму ООП - это понятно.
Просто у меня B очень частный случай А и Я хочу иметь его в топе иерархии.
Ткните, плс, Кота носом в доку, где описано почему недоступен конструктор...
П.С. Поправить - проблемы нет. Хочу понять почему есть ограничение.