【发布时间】:2013-09-25 07:44:46
【问题描述】:
我必须在不同的功能中重复使用相同的开关盒。在不同的功能中,switch case的定义会有所不同。例如:
int groupID = somenumber;
private void FunctionA()
{
switch (groupID)
{
case 0:
// Do Action A
break;
case 1:
// Do Action B
break;
case 2:
// Do Action C
break;
}
}
private void FunctionB()
{
switch (groupID)
{
case 0:
// Do Action Z
break;
case 1:
// Do Action X
break;
case 2:
// Do Action Y
break;
}
}
是否有任何方法可以一次使用相同的 switch case 但定义可以不同?
【问题讨论】:
-
处理这些情况的最佳方法是使用多态性和继承。您考虑过这种方法吗?
-
多态和继承?怎么样?
-
@DEN:重构的名称非常简单:Replace conditional with polymorphism。
标签: c# switch-statement