Это на самом деле не вложенный класс, а объект типа Door
, на который ссылается свойство объекта типа Car
. Поскольку ссылки по своей природе односторонние в C # (и большинстве других объектно-ориентированных языков), вам нужно будет добавить ссылку и в другом направлении, чтобы иметь возможность делать то, что пытаются.
Вот одна из возможных реализаций: добавить конструктор к Door
, приняв ссылку на Car
в качестве параметра. Конструктор должен сохранить ссылку в поле private readonly
. В методе GetColor()
используйте ссылку, чтобы получить color
экземпляра Car
.
Затем рассмотрите возможность замены GetColor()
get
-только Car
свойством на Door
. В зависимости от отношений в ваших реальных классах (я предполагаю, что вы на самом деле не моделируете автомобили), это может быть или не быть предпочтительным.