是否可以在switch语句中使用instanceof运算符?
我对instanceof
对象使用开关盒有疑问:
例如:我的问题可以用Java复制:
if(this instanceof A) doA();
else if(this instanceof B)
doB();
else if(this instanceof C)
doC():
如何使用实施switch...case
?
回答:
这是子类型多态性有帮助的典型方案。请执行下列操作
interface I { void do();
}
class A implements I { void do() { doA() } ... }
class B implements I { void do() { doB() } ... }
class C implements I { void do() { doC() } ... }
然后,你可以简单的调用do()
上this
。
如果你不能随意更改A
,B
和C
,则可以应用访问者模式来实现相同目的。
以上是 是否可以在switch语句中使用instanceof运算符? 的全部内容, 来源链接: utcz.com/qa/432784.html