список объектов внутри одного и того же типа объекта?

66
2

У меня есть объект со свойствами для Части. Но некоторые части являются "родителями" и имеют дочерние части. Эти дочерние части имеют все те же свойства, что и родительская часть (не те же значения свойств, что и те же свойства, что и их собственные значения).

Поэтому для каждого объекта Part я хочу иметь свойство списка дочерних частей. Я хочу создать список объектов Part - один для каждой дочерней части объекта Part, если это родительская часть.

Мой вопрос... у вас есть список объектов одного и того же типа объекта внутри объекта? (это даже имеет смысл?)

Простой пример:

public class Part
{
private string _Part;
private string _Description;
private List<Part> _childParts = new List<Part>();
}

спросил(а) 2012-12-05T18:26:00+04:00 7 лет, 7 месяцев назад
1
Решение
95

Да, вы можете, это краеугольный камень всех древовидных структур.

Например:

class Part {
public List<Part> Children { get; set; }
public Part Parent { get; set; }
}

отлично.

ответил(а) 2012-12-05T18:30:00+04:00 7 лет, 7 месяцев назад
66

Я думаю, вам нужно реализовать шаблон Composite: https://en.wikipedia.org/wiki/Composite_pattern

ответил(а) 2012-12-05T18:40:00+04:00 7 лет, 7 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема