我有一个类的接口,并且重写的函数应根据我重写函数的类的状态(枚举)而有所不同。
public class Test
{
Enm enm = Enm.e1;
public override fn1()
{
switch(enm)
{
case Enm.e1:
{
break;
}
...
}
}
public override fn2()
{
switch (enm)
{
case Enm.e1:
{
break;
}
...
}
}
public override fn3()
{
switch (enm)
{
case Enm.e1:
{
break;
}
...
}
}
}
是否可以进行单个评估并将其用于所有功能?
我是代表的新手,但是为状态为fn1 / fn2 / fn3的代表创建一个代表,并在每次状态更改时使用所需的函数填充它们,也许是一个好的解决方案?
我问,因为我认为对此有更好的解决方案。
谢谢您的帮助:)
此答案可能会因提供更多信息而失效,但是代表们呢?
代表有效地允许您将参数作为参数“上交”。您可以使用Delegate变量将其缩减为一个函数,然后通过该Argument传递代码的变量部分。
界面不是我自己创建的。我只是使用这些函数,并且知道什么时候调用这些函数。
如果无法更改现有代码(足够),请将其包装为完全控制的代码。