Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csOpIhPr 75 of 163 menu
◀ ▶

Закрытые члены базы в C#

Приватное не наследуется. Так сохраняют границу класса: потомок не видит чужое private.

Потомок может работать с таким полем через публичный метод родителя. Обращение к приватному имени базы из потомка не компилируется.

Запишем пример с ошибкой в комментарии и рабочий вызов публичного метода:

class User { public void SetName(string name) { this.name = name; } public string GetName() { return name; } private string name = ""; } class Employee : User { public void TryDirect() { // this.name = "x"; // ошибка: name private в User } }

Доступ через публичный метод базы:

Employee employee = new Employee(); employee.SetName("john"); Console.WriteLine(employee.GetName());

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

В классе Employee сделайте метод GetFull, который возвращает имя, пробел и фамилию.

Убедитесь, что код метода приведет к ошибке компиляции, если имя и фамилия закрыты в User.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить