Я работаю с абстрактным классом в C#, который унаследован несколькими классами. Одна из вещей, которые мне нужны в моем коде, - это статическое свойство, такое как «Unset», которое было бы статическим экземпляром класса с его основными свойствами, определенными для неустановленного значения. Общий пример выглядит следующим образом:Как определить статический экземпляр абстрактного класса?
public abstract class Person
{
public string Name {get; set;}
public string PhoneNumber {get; set;}
public static readonly Person Unset = new Person() {
Name = "Unset Name"
PhoneNumber = "Unset Phone"
}
}
Однако я не могу построить свойство «отключенного», потому что Person является абстрактным классом. Я не хочу определять свойство для каждого класса, происходящего из «Лица». Есть ли способ обойти это?
Важно также отметить, что наличие публичных сеттеров на одном экземпляре - это действительно плохая идея. – Groo
Я не уверен, что этого достаточно для моего проекта, но это определенно решение вопроса, который я задал. Благодаря! – celsound