クラスのベースからキャッチ例外
-
25-09-2019 - |
質問
私は、基本クラスを持っている、と私は、基本クラス内派生クラスのすべての例外をキャッチしたいと思い、これは可能ですか?
あなたはメソッドが派生クラスから何であるかを知ることができません。
解決
あなたは、特定のシナリオの詳細を提供する必要があります。しかし、たとえば、あなたが契約を提供するベース抽象クラスを持っているし、あなたがこのような何かを行うことができ、基本クラスの契約を呼び出すときに派生クラスによってスローされたすべての可能な例外をキャッチしたい場合:
public abstract class Base
{
protected abstract void InternalFoo();
protected abstract void InternalBar();
public void Foo()
{
try { this.InternalFoo(); }
catch { /* ... */ }
}
public void Bar()
{
try { this.InternalBar(); }
catch { /* ... */ }
}
}
他のヒント
でののあなたは派生クラスを意味する、またはクラスのメソッドを呼び出す非関連のクラスは、
?お使いのベースから派生したクラスを呼び出します私はあなたがプロキシクラスに基地を回すことを行うことができますね。 ダイナミックプロキシの例を参照してください。
所属していません StackOverflow