Разработать и реализовать иерархию классов - C#
Формулировка задачи:
Помогите с решением вопросов для экзамена. Спасибо!
Разработать и реализовать иерархию классов для описанных объектов предметной области, используя механизмы наследования. Проверить ее на тестовом примере с демонстрацией всех возможностей разработанных классов на конкретных данных. Все поля объекта должны быть закрытыми для доступа извне.
Объект – больной. Параметры: Фамилия, возраст. Методы: конструктор, вывода на экран фамилии и возраста.
Объект – больной. Параметры: Фамилия, возраст, год последней диспансеризации. Методы: конструктор, определения года следующей диспансеризации, исходя из того, что диспансеризация должна проходить каждые 3 года.
Решение задачи: «Разработать и реализовать иерархию классов»
textual
Листинг программы
using System;
class Program
{
static void Main(string[] args)
{
Patient p1=new Patient("Ivanov",24);
Console.WriteLine("Name: {0},age {1} ",p1.FName(),p1.Age());
Console.WriteLine(new string('-',8));
Deadman dn=new Deadman("Sinicin",22,DateTime.Now.Year);
Console.WriteLine("Name: {0},age {1},next visit will be in {2}",dn.FName(),dn.Age(),dn.NextVisit());
Console.WriteLine(new string('-', 8));
Console.ReadKey();
}
}
class Patient
{
private readonly string fam;
private readonly int _vozr;
public Patient(string fam, int vozr)
{
this.fam = fam;
this._vozr = vozr;
}
public string FName()
{
return fam;
}
public int Age()
{
return _vozr;
}
}
class Deadman:Patient
{
private readonly int year;
public Deadman(string fam, int vozr, int year) : base(fam, vozr)
{
this.year = year;
}
public int NextVisit()
{
return year + 3;
}
}