oop – 泛化对聚合的使用

前端之家收集整理的这篇文章主要介绍了oop – 泛化对聚合的使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个班级模型,银行是一个现在正在进入计算机化银行网络的班级.这必须有ATM(自动柜员机)和人员收银员.

@H_404_8@

我使用了Generalization并使用了一个名为AccountHandlers的类来继承Bank类.此AccountHandler还汇总了ATM和HumanCashier.@H_404_8@

现在问题是,我的朋友在争辩说我把整件事弄错了.根据他的说法,AccountHandlers必须汇总到Bank,而ATM和HumanCashier必须继承到AccountHandlers.@H_404_8@

我有点困惑.我该如何塑造!!或者这两种方法都正确吗?@H_404_8@

解决方法

我会回到基础.

@H_404_8@

您应该问自己ATM是否是AccountHandler,或者AccountHandler是否有ATM.这应该给你一个关于使用继承或组合的问题的一般答案.@H_404_8@

两者都是正确的.只有一个是好的设计,这取决于您的应用程序尝试做什么.@H_404_8@

通常,有一条经验法则(取自Effective Java),表明你应该支持组合而不是继承.拿一粒盐,确保你正确地设计你的应用程序. (有关详细信息,请参阅Prefer composition over inheritance?)@H_404_8@

猜你在找的设计模式相关文章