[LANG-1570] JavaVersion enum constants for Java 14 and 15. (#553)

diff --git a/src/main/java/org/apache/commons/lang3/JavaVersion.java b/src/main/java/org/apache/commons/lang3/JavaVersion.java
index e287c9f..d275607 100644
--- a/src/main/java/org/apache/commons/lang3/JavaVersion.java
+++ b/src/main/java/org/apache/commons/lang3/JavaVersion.java
@@ -116,6 +116,20 @@ public enum JavaVersion {
     JAVA_13(13.0f, "13"),
 
     /**
+     * Java 14
+     *
+     * @since 3.11
+     */
+    JAVA_14(14.0f, "14"),
+
+    /**
+     * Java 15
+     *
+     * @since 3.11
+     */
+    JAVA_15(15.0f, "15"),
+
+    /**
      * The most recent java version. Mainly introduced to avoid to break when a new version of Java is used.
      */
     JAVA_RECENT(maxVersion(), Float.toString(maxVersion()));
@@ -224,6 +238,10 @@ static JavaVersion get(final String nom) {
             return JAVA_12;
         } else if ("13".equals(nom)) {
             return JAVA_13;
+        } else if ("14".equals(nom)) {
+            return JAVA_14;
+        } else if ("15".equals(nom)) {
+            return JAVA_15;
         }
         final float v = toFloatVersion(nom);
         if ((v - 1.) < 1.) { // then we need to check decimals > .9
diff --git a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
index 64d8f82..c06b57c 100644
--- a/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
+++ b/src/test/java/org/apache/commons/lang3/JavaVersionTest.java
@@ -25,6 +25,8 @@
 import static org.apache.commons.lang3.JavaVersion.JAVA_11;
 import static org.apache.commons.lang3.JavaVersion.JAVA_12;
 import static org.apache.commons.lang3.JavaVersion.JAVA_13;
+import static org.apache.commons.lang3.JavaVersion.JAVA_14;
+import static org.apache.commons.lang3.JavaVersion.JAVA_15;
 import static org.apache.commons.lang3.JavaVersion.JAVA_1_1;
 import static org.apache.commons.lang3.JavaVersion.JAVA_1_2;
 import static org.apache.commons.lang3.JavaVersion.JAVA_1_3;
@@ -62,10 +64,12 @@ public void testGetJavaVersion() {
         assertEquals(JAVA_11, get("11"), "11 failed");
         assertEquals(JAVA_12, get("12"), "12 failed");
         assertEquals(JAVA_13, get("13"), "13 failed");
+        assertEquals(JAVA_14, get("14"), "14 failed");
+        assertEquals(JAVA_15, get("15"), "15 failed");
         assertEquals(JAVA_RECENT, get("1.10"), "1.10 failed");
         // assertNull("2.10 unexpectedly worked", get("2.10"));
         assertEquals(get("1.5"), getJavaVersion("1.5"), "Wrapper method failed");
-        assertEquals(JAVA_RECENT, get("14"), "Unhandled"); // LANG-1384
+        assertEquals(JAVA_RECENT, get("16"), "Unhandled"); // LANG-1384
     }
 
     @Test