How do I force the subclass to display the correct data?
class Program
{
static void Main(string[] args)
{
var tran = new List<Transporte>();
tran.Add(new Navio()); // Objetos das subclasses
tran.Add(new Aviao()); // podem pertencer
tran.Add(new Onibus()); // ao tipo da Superclasse.
Console.WriteLine(" exemplo aplicação polimorfismo .");
for (int i = 0; i < tran.Count; i++)
{
tran[i].exibeDados();
}
Console.ReadKey();
}
}
public class Transporte
{
public void exibeDados()
{
Console.WriteLine("classe transporte: Método para exibição dos dados.");
}
}
public class Aviao : Transporte
{
// Sobreposição do método da superclasse
public void exibeDados()
{
Console.WriteLine("Aviao");
}
}
public class Navio : Transporte
{
// Sobreposição do método da superclasse
public void exibeDados()
{
Console.WriteLine("Navio");
}
}
public class Onibus : Transporte
{
public void exibeDados()
{
// Sobreposição do método da superclasse
Console.WriteLine("Onibus");
}
}