我有一个已有的订单类,有很多属性和方法。我现在需要创建一个子订单类,它是订单类的一个子集。它不仅具有许多排序类的字段,还可能有许多相同的计算方法,可能在某些地方有一两行差异。订单类则需要包含一个子订单对象列表。我将如何去创建子目录类?我应该从订单类派生吗?订单和子订单
Q
订单和子订单
0
A
回答
0
它似乎是重构的情况...
尽管Order类很容易存在,但它的一些属性和方法似乎需要移动到OrderSubClass。
如果这两个类的某些属性和行为是共同的,那么创建一个公共基类(或一个接口)也可能是合适的。
一旦上述安排,Order类可以成为SubOrders的容器,这似乎是问题中指出的方向。
0
如果子订单不共享订单的所有属性,我不会从订单派生子订单。
相反,制作一个具有共享行为和属性并从基类派生Order和Suborder的公共基类。
0
Composite Pattern可能会给你一个所需的设计小费。
我愿意层次结构是这样的:
OrderBase
|--> MainOrder
|--> Suborder
,或者MainOrder和亚目有足够的不同,那么接口将是更好的使用:
MainOrder <--- IOrder
Suborder <--- IOrder
但是,这将不共享实现。
相关问题
- 1. 订单和订单明细
- 2. 重复订单+订单数量和每个订单的总数
- 3. 从订单线计算订单总和
- 4. 订单和订单行数报告
- 5. 提取订单和订单行使用子查询计数
- 6. IEnumerable和订单
- 7. 组和订单
- 8. 子查询订单
- 9. 已下订单的订单
- 10. 订单清单,顶级订单未知
- 11. Rails ID和订单
- 12. CommandHandler和EventHandler订单
- 13. 订单
- 14. 电子商务订单系统不可改变的订单
- 15. 订单查询LIKE子句
- 16. wordpress订单定制帖子
- 17. 子报表订单排序
- 18. Magento订单电子邮件
- 19. 复杂的订单子句?
- 20. 以新订单钩取订单数据
- 21. 贝宝订单去opencart放弃订单
- 22. 基于订单值的'IN'订单 - MySQL
- 23. 无法点击订单管理订单
- 24. WHCMS订单取消或订单删除
- 25. 获取订单项woocommerce订单
- 26. HQL按物业订单指定订单?
- 27. WooCommerce订阅低于订单
- 28. 从订单编号,电子邮件和客户姓氏获取订单状态
- 29. C#订单清单
- 30. 查询一段时间的订单百分比和订单数