Несовместимость по доступности: доступность типа параметра ниже доступности метода - C#

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

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

Всем привет! Делаю задание на тему наследия классов. Есть класс «Поликлиника». Туда нужно загрузить информацию при помощи List<> из двух других классов. Выскакивает единственная ошибка: доступность типа параметра ниже доступности метода в классе «Поликлиника». Подскажите, что поправить нужно? Поликлиника:
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Lab7
  6. {
  7. public class Poliklinika
  8. {
  9. static int count = 0;
  10. int nomerr;
  11. string adres;
  12. int telefon;
  13. List<Vrach> vrachi;
  14. List<Pacient> pacienti;
  15. public Poliklinika()
  16. {
  17. this.nomerr = count;
  18. this.vrachi = new List<Vrach>() { new Vrach() };
  19. this.pacienti = new List<Pacient>() { new Pacient() };
  20. count++;
  21. }
  22. public Poliklinika (int nomer, string adres, int telefon, List<Vrach> vrachi, List<Pacient> pacienti)
  23. {
  24. this.nomerr = count;
  25. this.vrachi = vrachi;
  26. this.pacienti = pacienti;
  27. count++;
  28. }
  29. public string Passport()
  30. {
  31. return string.Format("Описание поликлиники:\n" +
  32. "- Номер: {0}\n" +
  33. "- Адрес: {1}\n" +
  34. "- Телефон: {2}\n" +
  35. "- Число врачей: {3}\n" +
  36. "- Число пациентов: {4}\n", nomerr, adres, telefon, vrachi.Count, pacienti.Count);
  37. }
  38. }
  39. }
Vrach:
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Lab7
  6. {
  7. public class Vrach : Chelovek
  8. {
  9. int datanachala;
  10. Spetsialnosti spe;
  11. Dolzhnosti dol;
  12. public Vrach() : base()
  13. {
  14. this.datanachala = 2007;
  15. this.spe = Spetsialnosti.Lor;
  16. this.dol = Dolzhnosti.Podmetala;
  17. }
  18. public Vrach(string imya, string familiya, string otchestvo, string pol, int datarozh, Spetsialnosti spe, Dolzhnosti dol, int datanachala)
  19. : base(imya, familiya, otchestvo, pol, datarozh)
  20. {
  21. this.spe = spe;
  22. this.dol = dol;
  23. this.datanachala = datanachala;
  24. }
  25. private string GetSpetsialnosti()
  26. {
  27. string spetype = "";
  28. switch (spe)
  29. {
  30. case Spetsialnosti.Terapevt:
  31. spetype = "Терапевт"; break;
  32. case Spetsialnosti.Lor:
  33. spetype = "Лор"; break;
  34. case Spetsialnosti.Khirurg:
  35. spetype = "Хирург"; break;
  36. }
  37. return spetype;
  38. }
  39. private string GetDolzhnosti()
  40. {
  41. string doltype = "";
  42. switch (dol)
  43. {
  44. case Dolzhnosti.Glavvarch:
  45. doltype = "Главврач"; break;
  46. case Dolzhnosti.Podmetala:
  47. doltype = "Подметала"; break;
  48. case Dolzhnosti.Dvornik:
  49. doltype = "Дворник"; break;
  50. }
  51. return doltype;
  52. }
  53. public string Passport()
  54. {
  55. return string.Format("Информация о враче:\n" +
  56. "- Имя: {0}\n" +
  57. "- Фамилия: {1}\n" +
  58. "- Отчество: {2}\n" +
  59. "- Пол: {3}\n" +
  60. "- Дата рождения: {4}\n" +
  61. "- Специальность: {5}\n" +
  62. "- Должность: {6}\n" +
  63. "- Дата начала работы: {7}\n", imya, familiya, otchestvo, pol, datarozh, GetSpetsialnosti(), GetDolzhnosti(), datanachala);
  64. }
  65. }
  66. }
Pacient:
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Lab7
  6. {
  7. class Pacient : Chelovek
  8. {
  9. Nomer nomer;
  10. Gruppa gruppa;
  11. public Pacient() : base()
  12. {
  13. this.nomer = Nomer.Tretii;
  14. this.gruppa = Gruppa.Dva;
  15. }
  16. public Pacient(string imya, string familiya, string otchestvo, string pol, int datarozh, Nomer nomer, Gruppa gruppa)
  17. : base(imya, familiya, otchestvo, pol, datarozh)
  18. {
  19. this.nomer = nomer;
  20. this.gruppa = gruppa;
  21. }
  22. private string GetNomer()
  23. {
  24. string getn = "";
  25. switch (nomer)
  26. {
  27. case Nomer.Perviy:
  28. getn = "Первый"; break;
  29. case Nomer.Vtoroi:
  30. getn = "Второй"; break;
  31. case Nomer.Tretii:
  32. getn = "Третий"; break;
  33. }
  34. return getn;
  35. }
  36. private string GetGruppa()
  37. {
  38. string getg = "";
  39. switch (gruppa)
  40. {
  41. case Gruppa.Odin:
  42. getg = "Один"; break;
  43. case Gruppa.Dva:
  44. getg = "Два"; break;
  45. case Gruppa.Tri:
  46. getg = "Три"; break;
  47. }
  48. return getg;
  49. }
  50. public string Passport()
  51. {
  52. return string.Format("Информация о пациенте:\n" +
  53. "- Имя: {0}\n" +
  54. "- Фамилия: {1}\n" +
  55. "- Отчество: {2}\n" +
  56. "- Пол: {3}\n" +
  57. "- Дата рождения: {4}\n" +
  58. "- Номер: {5}\n" +
  59. "- Группа крови: {6}\n", imya, familiya, otchestvo, pol, datarozh, GetNomer(), GetGruppa());
  60. }
  61. }
  62. }
Ошибка в классе «Поликлиника» в 26 строке, доступность типа параметра Пациент ниже доступности метода Поликлиника.

Решение задачи: «Несовместимость по доступности: доступность типа параметра ниже доступности метода»

textual
Листинг программы
  1. public class Vrach : Chelovek

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


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

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

10   голосов , оценка 4.2 из 5

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

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

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