Sobes.tech
Back to questions
Junior — Middle
88

Объясните назначение и использование модификатора доступа protected в объектно-ориентированном программировании.

Answer from AI

sobes.tech AI

Модификатор доступа protected в объектно-ориентированном программировании ограничивает доступ к членам класса (полям, методам) так, что они доступны:

  • Внутри самого класса,
  • В классах-наследниках,
  • В пределах того же пакета (в языках, где есть понятие пакета, например, Java).

Это позволяет скрыть детали реализации от внешнего мира, но при этом дать возможность подклассам использовать и переопределять эти члены.

Пример на Java:

public class Animal {
    protected void makeSound() {
        System.out.println("Some sound");
    }
}

public class Dog extends Animal {
    @Override
    protected void makeSound() {
        System.out.println("Bark");
    }
}

Здесь метод makeSound доступен в классе Dog, но не доступен из других классов, не являющихся наследниками.