Ich habe den folgenden einfachen CodeSo rufen Sie eine überschriebene Methode mit Überladungen auf?
abstract class A
{
public abstract void Test(Int32 value);
}
class B : A
{
public override void Test(Int32 value)
{
Console.WriteLine("Int32");
}
public void Test(Double value)
{
Test((Int32)1);
}
}
Wenn ich diesen Code die Zeile-Test lief ((Int32) 1) Stapelüberlauf verursacht aufgrund unendliche Rekursion. Der einzig mögliche Weg, um richtig richtige Methode aufrufen (mit Integer-Parameter) I gefunden
(this as A).Test(1);
Aber das ist für mich nicht geeignet, da beide Methoden Test-öffentlich sind, und ich bin die Nutzer bereit beide in der Lage sein zu nennen Methode?