These requirements define the kind of changes that are permissible when a Java EE expert group updates a Java EE API specification from one version to the next. They were written in conjunction with the Java EE spec leads and are intended to apply equally to all Java EE specifications.
- David Schlosnagle
For Java programs, there are three main categories of compatibility: Source: Source compatibility concerns translating Java source code into class files. Binary: Binary compatibility is defined in The Java Language Specification as preserving the ability to link without error. Behavioral: Behavioral compatibility includes the semantics of the code that is executed at runtime.
- David Schlosnagle