Описать базовый и производные классы - C#
Формулировка задачи:
Всем привет,язык си шарп для меня новый,помогите разобраться с заданием.
В программе требуется описать базовый и производные классы. Базовый класс (возможно, абстрактный) с помощью виртуальных или абстрактных методов и свойств должен задавать интерфейс для производных классов. Во всех классах следует переопределить метод Equals, чтобы обеспечить сравнение значений, а не ссылок. Функция Main должна содержать массив из элементов базового класса, заполненный ссылками на производные классы. В этой функции должно демонстрироваться использование всех разработанных элементов классов.
вот что я сделалчто еще нужно написать? какие функции?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace La2
{
class Person
{
string fio, dol, burn;
public virtual void Method()
{
Console.WriteLine("Введите ФИО человека: ");
fio = Console.ReadLine();
Console.WriteLine("Введите должность: ");
dol = Console.ReadLine();
Console.WriteLine("Введите дату рождения: ");
burn = Console.ReadLine();
}
}
class Students : Person
{
string fio, dol, burn;
public override void Method()
{
Console.WriteLine("Введите ФИО человека: ");
fio = Console.ReadLine();
Console.WriteLine("Введите должность: ");
dol = Console.ReadLine();
Console.WriteLine("Введите дату рождения: ");
burn = Console.ReadLine();
}
public void Out()
{
Console.WriteLine(fio + "\n" + dol + " " + burn + "\n");
}
};
class Teacher : Person
{
string fio, dol, burn;
public override void Method()
{
Console.WriteLine("Введите ФИО человека: ");
fio = Console.ReadLine();
Console.WriteLine("Введите должность: ");
dol = Console.ReadLine();
Console.WriteLine("Введите дату рождения: ");
burn = Console.ReadLine();
}
public void Out()
{
Console.WriteLine(fio + "\n" + dol + " " + burn + "\n");
}
};
class Kaf : Person
{
string fio, dol, burn;
public override void Method()
{
Console.WriteLine("Введите ФИО человека: ");
fio = Console.ReadLine();
Console.WriteLine("Введите должность: ");
dol = Console.ReadLine();
Console.WriteLine("Введите дату рождения: ");
burn = Console.ReadLine();
}
public void Out()
{
Console.WriteLine(fio + "\n" + dol + " " + burn + "\n");
}
};
class Program
{
static void Main(string[] args)
{
int k;
Console.WriteLine("Введите количество людей: ");
k = Convert.ToInt32(Console.ReadLine());
Person[] a = new Person[k];
Students[] b = new Students[k];
Teacher[] c = new Teacher[k];
Kaf[] d = new Kaf[k];
for (int i = 0; i < k; i++)
{
int v = 0;
Console.Clear();
Console.WriteLine("Выберите должность : ");
Console.WriteLine("1-Студент ");
Console.WriteLine("2-Преподаватель ");
Console.WriteLine("3-Заведующий кафедрой ");
v = Convert.ToInt32(Console.ReadLine());
switch (v)
{
case 1:
Console.WriteLine("Студент ");
b[i] = new Students();
b[i].Method();
break;
case 2:
Console.WriteLine("Преподаватель");
c[i] = new Teacher();
c[i].Method();
break;
default:
Console.WriteLine("Заведующий");
d[i] = new Kaf();
d[i].Method();
break;
}
}
Console.ReadLine();
Console.Clear();
Console.WriteLine("Вывод записей :");
for (int i = 0; i < k; i++)
{ b[i].Out();
c[i].Out();
d[i].Out(); }
Console.ReadLine();
}
}
}Решение задачи: «Описать базовый и производные классы»
textual
Листинг программы
public void Expell(Student loser)
{
// ...
}