Какие основные различия существуют между модификаторами доступа public, private и protected в языке программирования?

В C# модификаторы доступа определяют видимость членов класса:

Короткий ответ

Что ответить на собеседовании

В C# модификаторы доступа определяют видимость членов класса:

Подробный разбор

Ответ с пояснениями

В C# модификаторы доступа определяют видимость членов класса:

  • public: доступен из любого кода, без ограничений.
  • private: доступен только внутри того же класса или структуры.
  • protected: доступен внутри того же класса и в производных классах.

Пример:

class BaseClass {
    public int PublicField;
    private int PrivateField;
    protected int ProtectedField;

    void Method() {
        // Доступ ко всем полям внутри класса
        PublicField = 1;
        PrivateField = 2;
        ProtectedField = 3;
    }
}

class DerivedClass : BaseClass {
    void Method() {
        PublicField = 1;      // Доступен
        // PrivateField = 2;  // Ошибка, недоступен
        ProtectedField = 3;   // Доступен
    }
}

Таким образом, private самый ограниченный, protected расширяет доступ для наследников, а public — полностью открыт.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку