我有两种不同类型的发票,一种是针对消费者的发票,另一种是针对企业的发票。我创建了一个“发票”抽象类,消费者和商业发票都继承自该类。消费者发票引用消费者实体,业务发票引用业务实体。
现在这可以正常工作,但是当我在上下文类中有“发票”的集合时,就会出现问题。(这实际上将包含消费者和企业发票)。我无法引用“业务”对象或“消费者”对象。(非常明智……但是我只是想知道如何解决这个问题?我想这是一个很常见的情况?)
我是否只在抽象类“ GetInvoiceRecipient”中创建了一个新方法,该方法返回了“ Recipient”对象?但是,此解决方案的唯一问题是,现在我无法检索给定消费者或给定企业的发票?
您可以只创建一个收件人接口,并让“消费者”类和“业务”类实现它。
抽象发票将仅与收件人接口“对话”。
收件人接口将具有名为getName,getEmail或您需要的任何方法。您必须在Consumer和Business类中重新定义此方法。
这是一个简单的解决方案,但还有许多其他解决方案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句