Program.cs
using Turismo.Modelos;
Console.Clear();
List<Reserva> reservas = new List<Reserva> {
new ReservaPresencial("Escalada Turística"),
new ReservaOnline("IEEE Evento")
};
reservas.ForEach(r => r.Confirmar());
Reserva.cs
namespace Turismo.Modelos;
class Reserva {
public string? Local;
public Reserva(string? local) {
Local = local;
}
public virtual void Confirmar() {
Console.WriteLine("Confirmar reserva.");
}
}
ReservaPresencial.cs
namespace Turismo.Modelos;
class ReservaPresencial : Reserva {
public ReservaPresencial(string? local) : base(local){}
public override void Confirmar() {
Console.WriteLine($"Confirmando reserva presencial: {Local}");
}
}
ReservaOnline.cs
namespace Turismo.Modelos;
class ReservaOnline : Reserva {
public ReservaOnline(string? local) : base(local){}
public override void Confirmar() {
Console.WriteLine($"Confirmando reserva online: {Local}");
Console.WriteLine("Link enviado por email.");
}
}