Встречается на собеседованиях • сегодня

В чем разница между protected и default

protected и default (package-private) — оба модификатора доступа в Java, но с разной областью видимости:

  • default (без модификатора): доступен только внутри того же пакета. Не виден в подклассах из других пакетов.

    java
    class Example {
        void defaultMethod() {} // доступен только в этом пакете
    }
  • protected: доступен в том же пакете + в подклассах, даже если они в другом пакете.

    java
    class Parent {
        protected void protectedMethod() {} // доступен в подклассах и пакете
    }
    class Child extends Parent {
        void test() {
            protectedMethod(); // работает, даже если Child в другом пакете
        }
    }

Итог: protected шире — разрешает доступ подклассам, default ограничен только пакетом.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы