13.5. Evolution of Interfaces
This section describes the impact of changes to the declaration of an interface and its members on pre-existing binaries.
13.5.1. public Interfaces
Changing an interface that is not declared public
to be declared public
does not break compatibility with pre-existing binaries.
If an interface that is declared public
is changed to not be declared public
, then an IllegalAccessError
is thrown if a pre-existing binary is linked that needs but no longer has access to the interface type, so such a change is not recommended for widely distributed interfaces.
13.5.2. Superinterfaces
Changes to the interface hierarchy cause errors in the same way that changes to the class hierarchy do, as described in §13.4.4. In particular, ...
Get The Java® Language Specification, Java SE 7 Edition, Fourth Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.