Обучение Инкапсуляция (Эндрю Троелсен 214стр) Зачем get{} set[]!? - C#

Узнай цену своей работы

Формулировка задачи:

Есть класс Employee в нем нужно как то прописать год так Что бы можно было выводить
Листинг программы
  1. Employee joe = new Employee();
  2. joe.Age++;
Я сделал тупо просто задавать возраст Joe.GetAge = 23; и проверку. И вообше я не понимаю НА** это надо когда можно сделать такие же переменные в основной ветке Маин и через них уже работать, Зачем нужен этот класс Employee мы в нем просто 2ой раз перезадаем эту переменную. 2й день читаю эту главу про инкапсуляции и не вижу выгодной пользы от него. Зачем?
Листинг программы
  1. public int ID
  2. {
  3. get{}
  4. set{}
  5. }
если можно просто сделать public int Method() и без этих get set.
Листинг программы
  1. class Employee
  2. {
  3. private string fullName;
  4. private int empID;
  5. private float currPay;
  6. private int empAge;
  7. public Employee()
  8. {
  9. }
  10. public Employee(string fullName,int age, int empID, float currPay)
  11. {
  12. this.fullName = fullName;
  13. this.empID = empID;
  14. this.currPay = currPay;
  15. this.empAge = age;
  16. }
  17. public int ID
  18. {
  19. get{return empID;}
  20. set{empID = value;}
  21. }
  22. public string fullname
  23. {
  24. get{ return fullName;}
  25. set{ fullName = value;}
  26. }
  27. public float Pay
  28. {
  29. get{ return currPay;}
  30. set{currPay = value;}
  31. }
  32. public int GetAge
  33. {
  34. get{ return empAge;}
  35. set{ if(value <= 100) empAge = value;}
  36. }
  37. public void GiveBonus(float amount)
  38. {
  39. currPay += amount;
  40. }
  41. public void DisplayStats()
  42. {
  43. Console.WriteLine("Имя: {0}\nЗ/п: {1}\nКод: {2}\nВозраст: {3}", fullName,currPay,empID,empAge);
  44. Console.WriteLine();
  45. }
  46. }
Листинг программы
  1. public static void Main(string[] args)
  2. {
  3. string name = "";
  4. Employee Joe = new Employee();
  5. Console.Write("Введите возраст: ");
  6. Joe.GetAge = Convert.ToInt16(Console.ReadLine());
  7. Console.Write("Введите имя: ");
  8. name = Console.ReadLine();
  9. Joe.fullname = name;
  10. Joe.ID = 228;
  11. Joe.Pay = 2000;
  12. Joe.DisplayStats();
  13. Console.ReadKey();
  14. }
Бомбит уже от того что туплю в эту страницу уже 2ой день и не понимаю.

Решение задачи: «Обучение Инкапсуляция (Эндрю Троелсен 214стр) Зачем get{} set[]!?»

textual
Листинг программы
  1. Employee joe = new Employee();
  2. joe.Age++;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут