I mają następujące prosty kodJak wywołać metodę nadpisania, która ma przeciążenia?
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);
}
}
Gdy uruchomiony ten kod paska testowego ((Int32) 1) powoduje przepełnienie stosu z uwagi na nieskończonej rekursji. Jedynym możliwym sposobem, aby poprawnie nazwać właściwą metodę (z parametrem liczba całkowita) znalazłem to
(this as A).Test(1);
Ale to nie jest odpowiedni dla mnie, ponieważ obie metody testowe są publiczne i jestem gotów użytkownicy, aby móc wywołać zarówno metoda?