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

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

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

Всем привет! Делаю задание на тему наследия классов. Есть класс «Поликлиника». Туда нужно загрузить информацию при помощи List<> из двух других классов. Выскакивает единственная ошибка: доступность типа параметра ниже доступности метода в классе «Поликлиника». Подскажите, что поправить нужно? Поликлиника:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lab7
{
    public class Poliklinika
    {
        static int count = 0;
        int nomerr;
        string adres;
        int telefon;
 
        List<Vrach> vrachi;
        List<Pacient> pacienti;
 
        public Poliklinika()
        {
            this.nomerr = count;
            this.vrachi = new List<Vrach>() { new Vrach() };
            this.pacienti = new List<Pacient>() { new Pacient() };
            count++;
        }
 
        public Poliklinika (int nomer, string adres, int telefon, List<Vrach> vrachi, List<Pacient> pacienti)
        {
            this.nomerr = count;
            this.vrachi = vrachi;
            this.pacienti = pacienti;
            count++;
        }
 
        public string Passport()
        {
            return string.Format("Описание поликлиники:\n" +
                                "- Номер: {0}\n" +
                                "- Адрес: {1}\n" +
                                "- Телефон: {2}\n" +
                                "- Число врачей: {3}\n" +
                                "- Число пациентов: {4}\n", nomerr, adres, telefon, vrachi.Count, pacienti.Count);
        }
 
    }
}
Vrach:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lab7
{
    public class Vrach : Chelovek
    {
        int datanachala;
        Spetsialnosti spe;
        Dolzhnosti dol;
 
        public Vrach() : base()
        {               
            this.datanachala = 2007;
            this.spe = Spetsialnosti.Lor;
            this.dol = Dolzhnosti.Podmetala;
        }
 
        public Vrach(string imya, string familiya, string otchestvo, string pol, int datarozh,  Spetsialnosti spe, Dolzhnosti dol, int datanachala)
            : base(imya, familiya, otchestvo, pol, datarozh)
        {
            this.spe = spe;
            this.dol = dol;
            this.datanachala = datanachala;
        }
 
        private string GetSpetsialnosti()
        {
            string spetype = "";
            switch (spe)
            { 
                case Spetsialnosti.Terapevt: 
                    spetype = "Терапевт"; break;
                case Spetsialnosti.Lor:
                    spetype = "Лор"; break;
                case Spetsialnosti.Khirurg: 
                    spetype = "Хирург"; break;
            }
            return spetype;
        }
 
        private string GetDolzhnosti()
        {
            string doltype = "";
            switch (dol)
            {
                case Dolzhnosti.Glavvarch:
                    doltype = "Главврач"; break;
                case Dolzhnosti.Podmetala:
                    doltype = "Подметала"; break;
                case Dolzhnosti.Dvornik:
                    doltype = "Дворник"; break;
            }
            return doltype;
        }
 
        public string Passport()
        {
            return string.Format("Информация о враче:\n" +
                                 "- Имя: {0}\n" +
                                 "- Фамилия: {1}\n" +
                                 "- Отчество: {2}\n" +
                                 "- Пол: {3}\n" +
                                 "- Дата рождения: {4}\n" +
                                 "- Специальность: {5}\n" +
                                 "- Должность: {6}\n" +
                                 "- Дата начала работы: {7}\n", imya, familiya, otchestvo, pol, datarozh, GetSpetsialnosti(), GetDolzhnosti(), datanachala);
        }
    }
}
Pacient:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Lab7
{
    class Pacient : Chelovek
    {
        Nomer nomer;
        Gruppa gruppa;
 
        public Pacient() : base()
        {   
            this.nomer = Nomer.Tretii;
            this.gruppa = Gruppa.Dva;
        }
 
         public Pacient(string imya, string familiya, string otchestvo, string pol, int datarozh,  Nomer nomer, Gruppa gruppa)
            : base(imya, familiya, otchestvo, pol, datarozh)
        {
            this.nomer = nomer;
            this.gruppa = gruppa;
        }
 
         private string GetNomer()
         {
             string getn = "";
             switch (nomer)
             {
                 case Nomer.Perviy:
                     getn = "Первый"; break;
                 case Nomer.Vtoroi:
                     getn = "Второй"; break;
                 case Nomer.Tretii:
                     getn = "Третий"; break;
             }
             return getn;
         }
 
         private string GetGruppa()
         {
             string getg = "";
             switch (gruppa)
             {
                 case Gruppa.Odin:
                     getg = "Один"; break;
                 case Gruppa.Dva:
                     getg = "Два"; break;
                 case Gruppa.Tri:
                     getg = "Три"; break;
             }
             return getg;
         }
 
         public string Passport()
         {
             return string.Format("Информация о пациенте:\n" +
                                  "- Имя: {0}\n" +
                                  "- Фамилия: {1}\n" +
                                  "- Отчество: {2}\n" +
                                  "- Пол: {3}\n" +
                                  "- Дата рождения: {4}\n" +
                                  "- Номер: {5}\n" +
                                  "- Группа крови: {6}\n", imya, familiya, otchestvo, pol, datarozh, GetNomer(), GetGruppa());
         }
    }
}
Ошибка в классе «Поликлиника» в 26 строке, доступность типа параметра Пациент ниже доступности метода Поликлиника.

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

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

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


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

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

10   голосов , оценка 4.2 из 5
Похожие ответы