Interface JavaLanguageVersion

All Superinterfaces:
Comparable<JavaLanguageVersion>

public interface JavaLanguageVersion extends Comparable<JavaLanguageVersion>
Represents a Java Language version
Since:
6.7
  • Method Details

    • of

      static JavaLanguageVersion of(int version)
    • of

      static JavaLanguageVersion of(String version)
    • current

      @Incubating static JavaLanguageVersion current()
      Get the current (i.e., the current runtime) Java Language version.
      Returns:
      the current Java Language version
      Since:
      8.8
    • asInt

      int asInt()
      Return this version as a number, 14 for Java 14.

      Given the type used, this method returns the simple version even for versions lower than 5.

      Returns:
      the version number
      See Also:
    • toString

      String toString()
      Return this version as a String, "14" for Java 14.

      This method will return 1.<version> when the version is lower than 5.

      Overrides:
      toString in class Object
      Returns:
      the version number
      Since:
      6.8
    • canCompileOrRun

      boolean canCompileOrRun(JavaLanguageVersion other)
      Indicates if this version can compile or run code based on the passed in language version.

      For example, Java 14 can compile or run code from Java 11, but not the opposite.

      Parameters:
      other - the language version to check
      Returns:
      true if this version can compile or run code from the other version, false otherwise
    • canCompileOrRun

      boolean canCompileOrRun(int otherVersion)
      Indicates if this version can compile or run code based on the passed in language version.

      For example, Java 14 can compile or run code from Java 11, but not the opposite.

      Parameters:
      otherVersion - the language version to check, as an int
      Returns:
      true if this version can compile or run code from the other version, false otherwise