Java 面试跟进课堂设计,避免钻石案
最近有人问我设计问题。有两类马和鸟。我需要设计一个名为Unicorn的新类,它拥有类Horse和Bird的所有方法Java 面试跟进课堂设计,避免钻石案,java,uml,Java,Uml,最近有人问我设计问题。有两类马和鸟。我需要设计一个名为Unicorn的新类,它拥有类Horse和Bird的所有方法 Horse Bird | | Unicorn 既然在Java中我们不能扩展两个类(以避免菱形问题),我们如何实现这一点 请导游。提前感谢。在Java中,一个类不能扩展多个类,但一个接口可以扩展多个接口 在进入类级设计之前,首先创建两个接口Horse和Bird,然后创建接口Unicorn,它将扩展这两个接口 使用模式来实现这
Horse Bird
| |
Unicorn
既然在Java中我们不能扩展两个类(以避免菱形问题),我们如何实现这一点
请导游。提前感谢。在Java中,一个类不能扩展多个类,但一个接口可以扩展多个接口
在进入类级设计之前,首先创建两个接口Horse和Bird,然后创建接口Unicorn,它将扩展这两个接口 使用模式来实现这一点。您的unicorn类将包含Bird和Horse的实例,并通过在这些包含的实例上调用它们来实现相关的方法。可以创建Horse和Bird接口吗?您可以在同一个类中实现多个接口。