在此特定情况下跳过instanceOf(java)

时间:2017-06-01 18:54:05

标签: java oop instanceof

我知道这个主题有两种重复,其中TL; DR;使用方法覆盖,我相信并不是那么简单。这基本上是一个理论问题我不会链接代码导致它只是长。

想象一下,我们有3种不同类型的急救中心,它们都继承了一个实现接口的抽象类(FireServiceCenterMedicalServiceCenterPoliceServiceCenter

3种类型的紧急事件都继承了实现接口的抽象类(OrderEmergencyPropertyEmergencyHealthEmergency

3个中心中的每个中心只能处理1种类型的紧急情况,只有3个中心不会更多,而且所有类型都不同,即我们可以处理所有紧急情况。

FireServiceCenter - > PropertyEmergency

MedicalServiceCenter - > HealthEmergency

PoliceServiceCenter - > OrderEmergency

输入将是500个不同的紧急情况,并将它们链接到各自的中心

如何在不使用instanceOf的情况下完成此操作?

我的第一个想法是在每个中心添加一个额外的final static字段 和急救班女巫我会叫typeOfCenter / typeOfEmergency并将所有紧急事件添加到1个集合中,然后将所有中心添加到1个集合中,然后将它们匹配在一起(2个用于循环:1个用于{ {1}}和centers中的1个),但我不知道这与emergencies有什么不同,因为我将instanceOf用于他们的字段。

0 个答案:

没有答案