Основы программирования на C#

       

Персоны и профессии


Рассмотрим еще один пример работы с перечислениями, приближенный к реальности. Добавим в класс Person, рассмотренный в предыдущей лекции 16, поле, определяющее профессию персоны. Вполне разумно иметь перечисление, например, Profession, задающее список возможных профессий. Сделаем это поле, как обычно, закрытым, а доступ к нему обеспечим соответствующим свойством:

Profession prof; public Profession Prof { get {return (prof);} set {prof = value;} }

Добавим еще в класс Person метод Analysis, анализирующий профессию, организуя традиционный разбор случаев и принимая решение на каждой ветви, в данном примере - выводя соответствующий текст:

public void Analysis() { switch (prof) { case Profession.businessman: Console.WriteLine ("профессия: бизнесмен"); break; case Profession.teacher: Console.WriteLine ("профессия: учитель"); break; case Profession.engineer: Console.WriteLine ("профессия: инженер"); break; default: Console.WriteLine ("профессия: неизвестна"); break; } }

Приведу простой тестирующий пример работы с объектом Person и его профессией:

public void TestProfession() { Person pers1 = new Person ("Петров"); pers1.Prof = Profession.teacher; pers1.Analysis(); }

Результаты работы с объектами перечислений, полученные при вызове тестов TestEnum и TestProfession, показаны на рис. 17.3.


Рис. 17.3.  Результаты работы с перечислениями



Содержание раздела