Модификаторы доступа (спецификаторы) в C# с примерами программ
⚡ Умное резюме
Модификаторы доступа в C# — это ключевые слова, которые устанавливают видимость класса, свойства или метода, ограничивая доступ к ним для внешних программ. Конструкторы автоматически инициализируют значения полей при создании объекта класса.
Что такое модификатор доступа (спецификатор) в C#?
Модификаторы доступа В C# модификаторы доступа (или спецификаторы доступа) — это ключевые слова, используемые для определения видимости свойства или метода класса. Они используются, когда вы не хотите, чтобы другие программы видели свойства или методы класса. Модификаторы доступа ограничивают доступ, так что другие программы не могут видеть свойства или методы класса.
В C# существует 6 типов модификаторов доступа:
- Частные
- Общая
- Защищенный
- внутренний
- Защищенный внутренний
- Частный Защищенный
Мы узнаем об основных модификаторах доступа в C# на примерах программ, как описано ниже.
Модификаторы частного доступа в C#
Когда модификатор доступа Private прикреплен к свойству или методу, это означает, что к этим членам невозможно получить доступ из любой внешней программы.
Пример модификатора частного доступа
Давайте возьмем пример и посмотрим, что произойдет, если мы воспользуемся модификатором частного доступа.
Давайте изменим текущий код в нашем файле Tutorial.cs. В методе SetTutorial давайте изменим ключевое слово public на частное.
Теперь перейдем к нашему файлу Program.cs. Вы заметите, что под методом SetTutorial есть красная волнистая линия.
Поскольку теперь мы объявили метод SetTutorial частным в нашем классе Tutorial, Visual Studio это обнаружила. Он сообщил пользователю, выделив его, что теперь этот метод не будет работать из файла Program.cs.
Модификаторы общего доступа C#
Когда модификатор доступа Public прикреплен к свойству или методу, это означает, что к этим членам можно получить доступ из любой внешней программы. Мы уже видели это в наших предыдущих примерах.
Пример модификатора публичного доступа
Поскольку в классе Tutorial мы определили наши методы как общедоступные, доступ к ним можно получить из файла Program.cs.
Модификаторы защищенного доступа в C#
Когда модификатор доступа Protected прикреплен к свойству или методу, это означает, что доступ к этим членам может получить только классы унаследованы от текущего класс. Более подробно это будет объяснено в классе «Наследование».
Модификаторы внутреннего доступа C#
Когда модификатор доступа Internal прикреплен к свойству или методу, доступ к этим членам может быть возможен только для внутренней программы, но не для внешней программы.
Конструктор C #
C# Конструкторы используются для инициализации значений полей класса при создании соответствующих объектов. Конструктор — это метод, имеющий то же имя, что и у класса. Если в классе определен конструктор, он предоставит первый метод, который вызывается при создании объекта. Предположим, у нас есть класс под названием «Сотрудник». Метод конструктора также будет называться «Сотрудник()».
О методах конструктора следует отметить следующие ключевые моменты.
- Модификатор доступа C# по умолчанию для конструктора должен быть общедоступным.
- Для метода конструктора не должно быть возвращаемого типа.
Пример конструктора C#
Давайте теперь посмотрим, как мы можем включить пользователя конструкторов в наш код. Мы будем использовать конструкторы для инициализации полей TutorialID и TutorialName некоторыми значениями по умолчанию при создании объекта.
Шаг 1) Первым шагом является создание конструктора для нашего класса Tutorial. На этом этапе мы добавляем приведенный ниже код в файл Tutorial.cs.
Code Объяснение:-
- Сначала мы добавляем новый метод с тем же именем, что и у класса. Поскольку это то же имя, что и класс, C# рассматривает его как метод конструктора. Итак, теперь всякий раз, когда вызывающий метод создает объект этого класса, этот метод будет вызываться по умолчанию.
- В конструкторе Tutorial мы устанавливаем значение TutorialID равным 0, а TutorialName — значение «По умолчанию». Поэтому всякий раз, когда создается объект, эти поля всегда будут иметь значения по умолчанию.
Теперь перейдем к нашему файлу Program.cs и просто удалим строку, вызывающую метод SetTutorial. Это потому, что мы хотим просто посмотреть, как работает конструктор.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Tutorial { public int TutorialID; public string TutorialName; public Tutorial() { TutorialID=0; TutorialName="Default"; } public void SetTutorial(int pID,string pName) { TutorialID=pID; TutorialName=pName; } public String GetTutorial() { return TutorialName; } static void Main(string[] args) { Tutorial pTutor=new Tutorial(); Console.WriteLine(pTutor.GetTutorial()); Console.ReadKey(); } } }
Code Объяснение:-
- Первым шагом является создание объекта для класса Tutorial. Это делается с помощью ключевого слова «new».
- Мы используем метод GetTutorial класса Tutorial, чтобы получить TutorialName. Затем это отображается на консоли с помощью метода Console.WriteLine.
Если приведенный выше код введен правильно и программа выполнена, будет отображен следующий вывод.
Выход:
Из вывода мы видим, что конструктор действительно был вызван и что значение TutorialName было установлено на «По умолчанию».
Примечание: Здесь значение «по умолчанию» извлекается из конструктора.







