Classe Profession:
namespace exercise86.Models;
abstract class Profession
{
public string Title { get; }
public Profession(string title)
{
Title = title;
}
}
Classe Analyst:
namespace exercise86.Models;
internal class Analyst : Profession
{
public Analyst(string title) : base(title) { }
}
Classe Teacher:
namespace exercise86.Models;
internal class Teacher : Profession
{
public Teacher(string title) : base(title) { }
}
Classe Certificate:
namespace exercise86.Models;
internal class Certificate
{
public Profession Profession { get; }
public Certificate(Profession profession)
{
Profession = profession;
}
public override string ToString()
{
return $"Certificate issued to: {Profession.Title}";
}
}
Instâncias:
using exercise86.Models;
Analyst analista = new Analyst("Systems Analyst");
Teacher docente = new Teacher("Mathematics Teacher");
Certificate certificate1 = new Certificate(analista);
Certificate certificate2 = new Certificate(docente);
Console.WriteLine(certificate1);
Console.WriteLine(certificate2);