org.apache.commons.lang3

## Enum JavaVersion

- java.lang.Object
- - java.lang.Enum<JavaVersion>
  - - org.apache.commons.lang3.JavaVersion

- All Implemented Interfaces:
    Serializable, Comparable<JavaVersion>

      public enum JavaVersion
      extends Enum<JavaVersion>

  An enum representing all the versions of the Java specification. This is intended to mirror available values from the java.specification.version System property.

  Since:
    3.0

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `JAVA_0_9` The Java version reported by Android.
    `JAVA_1_1` Java 1.1.
    `JAVA_1_2` Java 1.2.
    `JAVA_1_3` Java 1.3.
    `JAVA_1_4` Java 1.4.
    `JAVA_1_5` Java 1.5.
    `JAVA_1_6` Java 1.6.
    `JAVA_1_7` Java 1.7.
    `JAVA_1_8` Java 1.8.
    `JAVA_1_9` Deprecated. As of release 3.5, replaced by `JAVA_9`
    `JAVA_10` Java 10
    `JAVA_11` Java 11
    `JAVA_12` Java 12
    `JAVA_13` Java 13
    `JAVA_9` Java 9
    `JAVA_RECENT` The most recent java version.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `atLeast(JavaVersion requiredVersion)` Whether this version of Java is at least the version of Java passed in.
    `boolean` | `atMost(JavaVersion requiredVersion)` Whether this version of Java is at most the version of Java passed in.
    `String` | `toString()` The string value is overridden to return the standard name.
    `static JavaVersion` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
    `static JavaVersion[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### JAVA_0_9

          public static final JavaVersion JAVA_0_9

      The Java version reported by Android. This is not an official Java version number.

    - #### JAVA_1_1

          public static final JavaVersion JAVA_1_1

      Java 1.1.

    - #### JAVA_1_2

          public static final JavaVersion JAVA_1_2

      Java 1.2.

    - #### JAVA_1_3

          public static final JavaVersion JAVA_1_3

      Java 1.3.

    - #### JAVA_1_4

          public static final JavaVersion JAVA_1_4

      Java 1.4.

    - #### JAVA_1_5

          public static final JavaVersion JAVA_1_5

      Java 1.5.

    - #### JAVA_1_6

          public static final JavaVersion JAVA_1_6

      Java 1.6.

    - #### JAVA_1_7

          public static final JavaVersion JAVA_1_7

      Java 1.7.

    - #### JAVA_1_8

          public static final JavaVersion JAVA_1_8

      Java 1.8.

    - #### JAVA_1_9

          @Deprecated
          public static final JavaVersion JAVA_1_9

      Deprecated. As of release 3.5, replaced by `JAVA_9`
      Java 1.9.

    - #### JAVA_9

          public static final JavaVersion JAVA_9

      Java 9
      Since:
        3.5

    - #### JAVA_10

          public static final JavaVersion JAVA_10

      Java 10
      Since:
        3.7

    - #### JAVA_11

          public static final JavaVersion JAVA_11

      Java 11
      Since:
        3.8

    - #### JAVA_12

          public static final JavaVersion JAVA_12

      Java 12
      Since:
        3.9

    - #### JAVA_13

          public static final JavaVersion JAVA_13

      Java 13
      Since:
        3.9

    - #### JAVA_RECENT

          public static final JavaVersion JAVA_RECENT

      The most recent java version. Mainly introduced to avoid to break when a new version of Java is used.

  - ### Method Detail

    - #### values

          public static JavaVersion[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (JavaVersion c : JavaVersion.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static JavaVersion valueOf(String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `IllegalArgumentException` - if this enum type has no constant with the specified name
        `NullPointerException` - if the argument is null

    - #### atLeast

          public boolean atLeast(JavaVersion requiredVersion)

      Whether this version of Java is at least the version of Java passed in.

      For example:
      `myVersion.atLeast(JavaVersion.JAVA_1_4)`

      Parameters:
        `requiredVersion` - the version to check against, not null
      Returns:
        true if this version is equal to or greater than the specified version

    - #### atMost

          public boolean atMost(JavaVersion requiredVersion)

      Whether this version of Java is at most the version of Java passed in.

      For example:
      `myVersion.atMost(JavaVersion.JAVA_1_4)`

      Parameters:
        `requiredVersion` - the version to check against, not null
      Returns:
        true if this version is equal to or greater than the specified version
      Since:
        3.9

    - #### toString

          public String toString()

      The string value is overridden to return the standard name.

      For example, `"1.5"`.

      Overrides:
        `toString` in class `Enum<JavaVersion>`
      Returns:
        the name, not null

Copyright © 2001–2020 The Apache Software Foundation. All rights reserved.