With the likely widely known exception to the introduction of the 'assert' keyword, has there ever been a change in the specification of the Java language, which is why the old code is no longer compatible with newer levels of the JDK source code?
Summary so far (many thanks for the comments):
Old Java codes can cause compiler errors when it uses declarations using one of the keywords introduced in a later version of the Java Language Specification (JLS):
mjn
source share