Witam, mam w swoim programie metode WyborPostaci() która zwraca obiekt mogący być typu "Wojownik lub Mag", obie te klasy dziedziczą po klasie Postać.
switch (Console.ReadLine())
{
case "1":
woj.Wybor();
x = true;
return woj;
case "2":
mag.Wybor();
x = true;
return mag;
default:
Console.WriteLine("popraw sie");
break;
}
Powyżej moment w którym funkcja zwraca obiekt.
Aby móc komfortowo się do tego obiektu odwoływać, i aby korzystał on z metod odpowiednich dla klasy Mag lub Wojownik wymyśliłem sobie że stworze w main inny obiekt i po prostu przypisze mu ten z metody WyborPostaci().
var postacUzytkownika = Postać.WyborPostaci();
postacUzytkownika.JakasMetoda();
Moje rozwiązanie oczywiście nie działa, kompilator nie wie jakiego typu jest obiekt postacUzytkownika.
Nie wiem co napisać aby móc normalnie korzystać ze wszystkich metod używając obiektu postacUzytkownika.