Changing Java Members from Public to Package-Private Breaks External Access
Goal: Restrict a Java library's internal classes and members to package-private access so code outside the package cannot accidentally call them. Constraint: Removing the public modifier is a source and binary compatibility break for any external caller already depending on those members. Package-private access is defined by the Java Language Specification a