This Annex to the Java SE 8 Specification contains drafts of the Java SE 8 Editions of The Java Language Specification (JLS) and The Java Virtual Machine Specification (JVMS).

These drafts include all changes made by Component JSR Specifications, namely JSR 335 (Lambda Expressions) and JSR 308 (Type Annotations). It also includes two small features that are not themselves the subject of a Component JSR Specification: Access to Parameter Names at Runtime (JEP 118) and Repeating Annotations (JEP 120). Finally, it includes all corrections and clarifications made since Java SE 7.

In each document, the differences between the Java SE 7 and 8 Editions are indicated by change bars and colored text, as follows:

Dark blue — Changes from JSR 335

Purple — Changes from JSR 308

Green — Changes for the two small features given above

Bright blue — Miscellaneous corrections to the Java SE 7 Edition

Red — Miscellaneous clarifications to the Java SE 7 Edition

Occasionally, where it is desirable to show the detail of a change, text from the Java SE 7 Edition is crossed out and the changed text is shown in dark blue, purple, green, or red as appropriate.

For the miscellaneous corrections and clarifications, background information is available in the JDK Bug System under the specification/language subcomponent, for the JLS, and the specification/vm subcomponent, for the JVMS.