5 · Intermediate · lesson 32 of 41
Packages & Modules
Namespaces for classes, and stronger boundaries between JAR-sized units.
Java
// File: com/acme/util/Math.java
package com.acme.util;
public class Math { ... }
// module-info.java (Java 9+)
module com.acme.util {
exports com.acme.util;
requires java.base;
}Key takeaways
- ✓Packages group related classes and are the unit of visibility.
- ✓Modules add explicit exports/requires — stronger encapsulation than JARs.