gpt4 book ai didi

oop - 设计类 : Each class encapsulate object of other related class

转载 作者:行者123 更新时间:2023-12-04 02:17:32 25 4
gpt4 key购买 nike

我被设计问题困住了。我想不出任何好的解决办法。这是问题陈述。

我有一组设备,这些设备中的每一个都有一些共同的属性和行为。每个设备可能包含一个或多个连接到它的其他类型的设备。例如:如果有 4 组设备 A,B,C,D,A 是所有设备的根。

A will have one or many B devices.
B will have one or many C devices.
C will have one or many D devices.

所有这些不同的设备集都有一些共同的属性,而有些则是它们自己独有的。

我必须创建一个报告,该报告将从这些对象中读取数据并将其读取到文件中。报告为 XML 格式,将描述整个系统的层次结构。

我该如何解决这个问题?任何建议评论都会有很大帮助。

最佳答案

这听起来像是 Visitor pattern 的情况.您让访问者访问 A 的每个子级。对于每个 child ,它将再次访问所有 child ,依此类推。

当访问者遍历树时,您收集有关每个节点的数据。在这种情况下,您可以根据需要直接以 XML 格式收集数据。

访问者模式适用于异构数据类型,但当某些节点也具有共同结构时也可以。

关于oop - 设计类 : Each class encapsulate object of other related class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33030366/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com