Classe Program:
Funcionario f1 = new Gerente();
Funcionario f2 = new Desenvolvedor();
Console.WriteLine(f1.GerarRelatorio());
Console.WriteLine(f2.GerarRelatorio());
Classe Funcionario:
namespace Polimorfismo;
internal class Funcionario
{
public virtual string GerarRelatorio()
{
return "Relatório genérico do funcionário.";
}
}
Classe Gerente:
namespace Polimorfismo;
internal class Gerente : Funcionario
{
public override string GerarRelatorio()
{
return "Relatório do gerente: supervisiona a equipe.";
}
}
Classe Desenvolvedor:
namespace Polimorfismo;
internal class Desenvolvedor : Funcionario
{
public override string GerarRelatorio()
{
return "Relatório do desenvolvedor: escreve código e corrige bugs.";
}
}