Разработка иерархии пакетов в Java, ограничения видимости

У меня есть посылка ts, содержащий интерфейсы для тикет-системы. у меня тоже есть hts пакет, содержащий конкретную реализацию ts, я имею TicketSystem.class в ts, а также HTicketSystem.class в hts продлил от него первый. HTicketSystem.class единственный публичный класс в hts пакет. Все остальные занятия в hts иметь видимость по умолчанию. hts Пакет содержит много файлов, среди которых Java-бины. Я хотел бы извлечь эти бобы в подпакет hts.beans, Очевидная проблема тогда - видимость, потому что согласно JLS:

7.1 Члены пакета

...

Предполагается, что иерархическая структура имен для пакетов удобна для организации связанных пакетов обычным способом, но сама по себе не имеет никакого значения, кроме запрета на пакет, имеющий подпакет с тем же простым именем, что и у типа верхнего уровня (§7.6) заявлено в этом пакете. Не существует особых отношений доступа между пакетом с именем oliver и другим пакетом с именем oliver.twist или между пакетами с именами evelyn.wood и evelyn.waugh.

1) Если я уйду beanA.class с видимостью по умолчанию, она не будет видна hts классы.
2) Если я изменюсь beanA.class для публичной видимости, это будет видно снаружи.

Любое предложение / лучшая практика высоко ценится.

0 ответов

Другие вопросы по тегам