私はサードパーティのライブラリからクラスA
を使用します。私はこの方法M
で私のクラスB
を書いたどのようにこの継承の難しさを解決するには?
public class A
{
public int M(int x)
{
...
}
}
::クラスはメソッドM
あり
public class B : A
{
public void M(params int[] xs)
{
}
}
そしてクラスC
に私は親クラスのメソッドM
を呼び出したいをA
public class C : B
{
public void M2()
{
int result = M(1);
}
}
しかし、コンパイラはこの行をエラーとしてマークします。メソッドM
のクラスB
を使用して、void
を返します。
クラスB
を書き直すことなくこの衝突を解決するにはどうすればよいですか?
Bを書き換えたくない場合は、1つの整数からなる配列でメソッドを呼び出すことができます。その後、常にBのメソッドに解決されます –