2014-11-30 2 views
3

Я знаю, что такое ключевое слово Java protected, что оно доступно для класса, пакета, подкласса, но не для мира.Какие члены класса должны иметь защищенный модификатор?

Мой вопрос в том, когда я должен использовать protected?

+7

Вы должны сделать именно то, что вы сказали: когда вам нужно что-то доступное для класса, пакета, подкласса, но не для мира. Не могли бы вы прояснить свой вопрос, чтобы объяснить, что вы спрашиваете? – 416E64726577

+0

, когда вам нужно его использовать: P – Pravin

+1

дать ему час или два перед закрытием. принятый ответ на первый предполагаемый дубликат явно не отвечает «* когда * я должен использовать защищенный». второй предполагаемый дубликат довольно пренебрегают только тремя ответами, и он также не фокусируется на «когда он защищен». НЕ ДЕЛАЙТЕ стековый поток, предотвращая появление хороших ответов. Или, по крайней мере, если вы закрываете, вы должны объяснить, почему вы думаете, что квадратная привязка подходит к круглой дыре. – necromancer

ответ

2

Вы используете защищенный класс, который предназначен для использования в качестве базового класса, и вы хотите получить доступ к некоторым методам или атрибутам из производных классов, даже если они не находятся в одном пакете и не делают их общедоступными.

Он широко используется в рамках. Обычно существует интерфейс, который определяет открытый API, и базовый класс (часто абстрактный), который должен быть получен. В производном классе переопределенные методы могут использовать некоторые защищенные методы и/или атрибуты. Таким образом:

  • эти методы не должны быть публичными
  • производный класс может быть в пакете реализатора не в рамочном.
3

Вы должны использовать защищенный в этом случае, когда хотите, чтобы элемент был доступен для класса, пакета, подкласса, но не для мира. Это очень полезно, если вы делаете программу с большим количеством других программистов, и вы не хотите, чтобы они меняли ваши переменные, но вы хотите иметь возможность создавать подклассы, которые могут это сделать.

Смежные вопросы