#java #module
#java #модуль
Вопрос:
У меня следующая структура пакета:
- a (содержит A.java , AUtils.java ) — неэкспортируемая упаковка
- b (содержит B.java , который является подклассом) — экспортированный пакет
- c (содержит C.java , который является подклассом, но использует B и его информацию) — экспортированный пакет
Класс A содержит средство получения частного поля пакета getInfo()
. Я не хочу, чтобы он был доступен из моего модуля. Классы B и C нуждаются в доступе getInfo()
, поэтому я создал AUtils.java utility class, который в основном позволяет всем моим классам получать доступ к получателю через метод AUtils.getInfo(A aInstance)
.
Считается ли это плохой практикой? Есть ли какой-нибудь более простой способ достичь моей цели?
Ответ №1:
вы можете использовать модификатор « protected
» для getInfo()
метода
Комментарии:
1. Я забыл упомянуть, что класс C использует класс B, поэтому B.getInfo() не может быть доступен внутри C