using System; namespace Capacitacion.Herencia { public class Persona { public int Edad { get; set; } public char Sexo { get; set; } public string Nombre { get; set; } public override string ToString() { var sb = new System.Text.StringBuilder(); sb.AppendLine($"Nombre: {Nombre}"); sb.AppendLine($"Sexo: {Sexo}"); sb.AppendLine($"Edad: {Edad}"); return sb.ToString(); } } public class Bombero: Persona { public Bombero(Persona persona) { this.Nombre = persona.Nombre; this.Sexo = persona.Sexo; this.Edad = persona.Edad; } public string Escuadron { get; set; } public int Numero { get; set; } public void ApagarIncendio() { Console.WriteLine("Apagando Incendio"); } public override string ToString() { var sb = new System.Text.StringBuilder(); sb.Append(base.ToString()); sb.AppendLine("Profesion: Bombero"); sb.AppendLine($"Escuadron: {Escuadron}"); sb.AppendLine($"Numero: {Numero}"); return sb.ToString(); } } public class Doctor : Persona { public Doctor(Persona persona) { this.Nombre = persona.Nombre; this.Sexo = persona.Sexo; this.Edad = persona.Edad; } public string Cedula { get; set; } public void Consultar() { Console.WriteLine("Consultando al paciente"); } public override string ToString() { var sb = new System.Text.StringBuilder(); sb.Append(base.ToString()); sb.AppendLine("Profesion: Doctor"); sb.AppendLine($"Cedula: {Cedula}"); return sb.ToString(); } } public class Cirujano : Doctor { public Cirujano(Doctor doctor) : base(doctor) { this.Cedula = doctor.Cedula; } public string Tipo { get; set; } public void Operar() { Console.WriteLine("Operando al paciente"); } public override string ToString() { var sb = new System.Text.StringBuilder(); sb.Append(base.ToString()); sb.AppendLine($"Especialidad: {Tipo}"); return sb.ToString(); } } public class Program { public static void Main(string[] args) { var persona = new Persona() { Edad = 19, Nombre = "Cesar", Sexo = 'H' }; Console.WriteLine(persona); var doctor = new Doctor(persona); doctor.Cedula = "ABC1233"; Console.Write(doctor); doctor.Consultar(); Console.WriteLine(); var cirujano = new Cirujano(doctor); cirujano.Tipo = "Ginecologia"; Console.Write(cirujano); cirujano.Consultar(); cirujano.Operar(); Console.WriteLine(); var bombero = new Bombero(persona); bombero.Escuadron = "L501"; bombero.Numero = 669; Console.Write(bombero); bombero.ApagarIncendio(); Console.ReadLine(); } } }