我有一个具有Part属性的对象。但有些部分是“父母”,有孩子的部分。这些子部件具有与父部件相同的属性(不是相同的属性值,只有具有自己值的相同属性)。
因此,对于每个Part对象,我想要一个子部件的list属性。我想要做的是创建一个Part Objects列表 - 如果它是父对象,则为Part对象中的每个子对象创建一个。
我的问题是......你能在对象中找到同一对象类型的对象列表吗? (这甚至有意义吗?)
简单示例:
public class Part
{
private string _Part;
private string _Description;
private List<Part> _childParts = new List<Part>();
}
答案 0 :(得分:5)
是的,你可以,它是所有树结构的基石。
例如:
class Part {
public List<Part> Children { get; set; }
public Part Parent { get; set; }
}
完全有效。
答案 1 :(得分:3)
我认为你需要实现复合模式:https://en.wikipedia.org/wiki/Composite_pattern