OO编程-基本继承

凉风

我有两种不同类型的发票,一种是针对消费者的发票,另一种是针对企业的发票。我创建了一个“发票”抽象类,消费者和商业发票都继承自该类。消费者发票引用消费者实体,业务发票引用业务实体。

现在这可以正常工作,但是当我在上下文类中有“发票”的集合时,就会出现问题。(这实际上将包含消费者和企业发票)。我无法引用“业务”对象或“消费者”对象。(非常明智……但是我只是想知道如何解决这个问题?我想这是一个很常见的情况?)

我是否只在抽象类“ GetInvoiceRecipient”中创建了一个新方法,该方法返回了“ Recipient”对象?但是,此解决方案的唯一问题是,现在我无法检索给定消费者或给定企业的发票?

伊迪保罗

您可以只创建一个收件人接口,并让“消费者”类和“业务”类实现它。

抽象发票将仅与收件人接口“对话”。

收件人接口将具有名为getName,getEmail或您需要的任何方法。您必须在Consumer和Business类中重新定义此方法。

这是一个简单的解决方案,但还有许多其他解决方案。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章