Модуль -- это законченный кусок программы, из которого торчит наружу только интерфейс. Сложно назвать Яву модульным языком))
В Яве всё на столько плохо, что в википедии есть ОТДЕЛЬНАЯ статья:
https://ru.m.wikipedia.org/wiki/Критика_Java
Вот характерная статья:
https://dev.by/lenta/main/istoriya-modu ... azyke-java
Цитата:"Вы можете разбить программу на три обязательные части, но это лишь жалкое подобие истинной  модульности".
Достаточно подробная статья, чтобы понять: даже пакеты в Яве -- это лишь иллюзия пространства имён.