class User { private String password; // only User String name; // default → same package protected int age; // package + subclasses public void login() { } // anywhere}
Why packages?
Organization → group related classes
Avoid name conflicts → two packages can have User classes
Access control → works with the default and protected access modifiers