我有以下情况:
class A
{
abstract void foo()
{
}
}
许多many类继承自A
并且覆盖foo()
。
我想捕捉那些被覆盖的foo
s引发的所有异常。
我考虑过装饰A
的foo
,并尝试。。捕获foo
的所有内容,并希望重写类的foo
也能用try..装饰。。从基础CCD_ 8的CCD_。
这可行吗?如果是,如何?有更好的方法吗?
您可以使用这个:
public class A
{
public void Foo()
{
try
{
DoFoo();
}
catch
{
}
}
protected abstract void DoFoo();
}
因此你会写:
public class B : A
{
protected override void DoFoo()
{
}
}