A protected
переменная - это доступ к любому классу внутри пакета и только к подклассу, который extends
базовый класс вне пакета.Почему защищенная переменная видима на уровне класса?
Почему Java реализовала это в этом случае, я по умолчанию в пакете вместо private
в пакете?
Это побеждает всю цель блокирования доступа к вашим переменным.
Определение защищенного модификатора доступа в Java является то, что если определить classA
имеет protected
переменную x
- то x
видно каждый класс в том же пакете, и это также видно на любой класс вне package
но extends classA
. Я чувствую, что в пределах уровня пакета он должен быть private
вместо доступа по умолчанию. Я уверен, что у Java может быть веская причина, и я хочу знать, что это может быть.
Я не понимаю ваш вопрос. –
Определение защищенного модификатора доступа в java заключается в том, что если вы определяете classA, то имеет защищенную переменную x - тогда x видимо для каждого класса в одном пакете, а также для любого класса вне пакета, но расширяет класс A. Я чувствую, что в пределах уровня пакета он должен быть закрытым, а не доступом по умолчанию. Я уверен, что у Java может быть веская причина, и я хочу знать, что это может быть. – user892871
Удивительно, положите все это в свой вопрос. –