gpt4 book ai didi

delphi - 如何为来自两个潜在类别的类别建模

转载 作者:行者123 更新时间:2023-12-03 18:40:39 24 4
gpt4 key购买 nike

我正在编写一个会计应用程序,并且不清楚如何为供应商建模。在我的业务领域中,卖方定义为销售产品或提供服务的个人或企业。人与公司之间的主要区别在于,人有名字,中间名和姓氏,而公司只有一个名字。

厂商似乎应该两者兼而有之,但是我的编程语言Delphi不允许多重继承。有没有一种方法可以创建一个或/或继承关系,或者我是否在模型中包括每个名称属性,以及一个将“人,事”作为值的“类型”属性?

最佳答案

如果您说Person始终是Vendor的一种,而Business始终是Vendor的一种,则永远不会有Person的实例,而该实例又不是Vendor的实例,并且永远不能有既不是Business实例又Vendor的实例。那不行

让我们尝试反转层次结构。如果您说Vendor始终是PersonBusiness的一种,则Vendor的实例如果不同时是PersonBusiness,就不能存在。那也不行。

这里不对劲!

输入角色。通常,RoleActor播放。就您而言,Actor可以是PersonBusinessVendor是其中一个Role播放的Actors。哎呀,您甚至可以使Actors的两个子类覆盖并且不相交,这意味着您不能拥有既不是Actor实例也不是Person实例的Vendor实例,并且该实例不能是PersonVendor

角色给您很大的灵活性。例如,您可以有一个Person相对于两个不同的Vendor扮演另一个Buyers的角色。角色也可以随时间变化,包括开始时间和结束时间。因此,我认为一个角色就是您要寻找的解决方案。

关于delphi - 如何为来自两个潜在类别的类别建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33906878/

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