Я попробовал следующий пример:
public class TestBase
{
public virtual string ReadOnly { get; }
public TestBase()
{
ReadOnly = "from base";
}
}
class Test : TestBase
{
public override string ReadOnly { get; }
public Test()
{
// nothing here
}
}
Когда я создаю экземпляр Test, я вижу, что ReadOnly остается нулевым. Но почему? Я действительно не понимаю, может ли кто-нибудь объяснить мне, почему это происходит? По крайней мере, я ожидал бы и ошибки, что свойство только для чтения не может быть установлено за пределами класса-владельца.