Как открыть многоэлементное поле в базовом классе для производных классов - PullRequest
0 голосов
/ 12 марта 2010

У меня есть базовый класс, который объявляет группировку объектов. Эта группировка может быть массивом, списком, коллекцией, это мне решать.

Производные классы этого базового класса являются теми, которые фактически устанавливают значения этого многоэлементного поля. Каков наилучший способ открыть это поле для производных классов?

1 Ответ

0 голосов
/ 15 марта 2010

Предоставьте доступ через защищенный минимальный интерфейс :

class Base {
    private List<string> _elems = new List<string>();
    protected ICollection<string> ElementStore { get { return _elems; } }
}

class Derived : Base {
    public Derived() {
        ElementStore.Add("Foo");
        ElementStore.Add("Bar");
    }
}
...