Java FAQ: Top Questions
33. What is the Java Module System?
The Java Module System , introduced in Java 9 (JPMS, Jigsaw), organizes code into modules for better encapsulation, scalability, and maintainability.
-
Module:
A group of packages defined in
module-info.java
. -
Directives:
exports
(exposes packages),requires
(depends on modules),uses
,provides
. - Encapsulation: Hides internal packages, exposing only exported ones.
- Benefits: Smaller runtime (jlink), improved security, clearer dependencies.
- Use Case: Large applications or custom runtimes.