Свойство должно быть доступно для записи в одном наследнике и readonly в другом - C#

Узнай цену своей работы

Формулировка задачи:

Есть базовый класс с вот таким пропертом
private string _name;
public virtual string Name
{
        get { return _name; }
        set { _name = value; }
}
Необходимо реализовать 2 наследника: в первом наследнике должны быть доступны и get и set, а у второго наследника это свойство было readonly (т.е. без set) Можно конечно у второго наследника написать просто
public override string Name 
{
        get { return "Имя"; }
        set { ; }
}
Но это как-то не кашерно, ибо в Name писать по прежнему можно, просто новое значение не применяется. Хотелось бы чтобы Name стал именно readonly Есть соображения на этот счет?

Решение задачи: «Свойство должно быть доступно для записи в одном наследнике и readonly в другом»

textual
Листинг программы
Children c = new Children();
c.Name = "abc"; // Тут нельзя
 
CBase b = (CBase)c;
b.Name = "abc";  // а тут можно

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 3.923 из 5
Похожие ответы