我知道这个主题有两种重复,其中TL; DR;使用方法覆盖,我相信并不是那么简单。这基本上是一个理论问题我不会链接代码导致它只是长。
想象一下,我们有3种不同类型的急救中心,它们都继承了一个实现接口的抽象类(FireServiceCenter
,MedicalServiceCenter
和PoliceServiceCenter
)
3种类型的紧急事件都继承了实现接口的抽象类(OrderEmergency
,PropertyEmergency
,HealthEmergency
)
3个中心中的每个中心只能处理1种类型的紧急情况,只有3个中心不会更多,而且所有类型都不同,即我们可以处理所有紧急情况。
FireServiceCenter
- > PropertyEmergency
MedicalServiceCenter
- > HealthEmergency
PoliceServiceCenter
- > OrderEmergency
输入将是500个不同的紧急情况,并将它们链接到各自的中心
如何在不使用instanceOf
的情况下完成此操作?
我的第一个想法是在每个中心添加一个额外的final static
字段
和急救班女巫我会叫typeOfCenter
/ typeOfEmergency
并将所有紧急事件添加到1个集合中,然后将所有中心添加到1个集合中,然后将它们匹配在一起(2个用于循环:1个用于{ {1}}和centers
中的1个),但我不知道这与emergencies
有什么不同,因为我将instanceOf
用于他们的字段。