Sobes.tech
Junior — Middle

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

sobes.tech AI

Отговор от AI

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

  • Вътре в самия клас,
  • В наследяващите класове,
  • В рамките на същия пакет (в езици, където има понятие за пакет, например Java).

Това позволява да се скрият детайлите на реализацията от външния свят, но в същото време да се даде възможност на подкласовете да използват и преопределят тези членове.

Пример на Java:

public class Animal {
    protected void makeSound() {
        System.out.println("Някакъв звук");
    }
}

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

Тук методът makeSound е достъпен в класа Dog, но не е достъпен от други класове, които не са наследници.