[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/UserXSX/JavaGuide/main/docs/java/new-features/java18.md [Back]  [Original]

--- title: Java 18 description: JDK 18 API category: Java tag: - Java head: - - meta - name: keywords content: Java 18,JDK18,,API ,JEP --- Java 18 2022 3 22 JDK 18 8 - [JEP 400: UTF-8 by DefaultUTF-8 ](https://openjdk.java.net/jeps/400) - [JEP 408: Simple Web Server Web ](https://openjdk.java.net/jeps/408) - [JEP 413: Code Snippets in Java API DocumentationAPI ](https://openjdk.java.net/jeps/413) - [JEP 416: Reimplement Core Reflection with Method Handles](https://openjdk.java.net/jeps/416) - [JEP 417: Vector API (Third Incubator) API](https://openjdk.java.net/jeps/417) - [JEP 418: Internet-Address Resolution SPI SPI](https://openjdk.java.net/jeps/418) - [JEP 419: Foreign Function & Memory API (Second Incubator) API](https://openjdk.java.net/jeps/419) JDK 8 JDK 25 ![ JDK 8 JDK 25 ](https://oss.javaguide.cn/github/javaguide/java/new-features/jdk8~jdk24.png) - [OpenJDK Java 18 ](https://openjdk.java.net/projects/jdk/18/) - [IntelliJ IDEA | Java 18 ](https://mp.weixin.qq.com/s/PocFKR9z9u7-YCZHsrA5kQ) ## JEP 400: UTF-8 by DefaultUTF-8 JDK UTF-8 Java 17 Java Mac Java Windows ## JEP 408: Simple Web Server Web Java 18 `jwebserver` Web ```bash $ jwebserver Binding to loopback by default. For all interfaces use "-b 0.0.0.0" or "-b ::". Serving /cwd and subdirectories on 127.0.0.1 port 8000 URL: http://127.0.0.1:8000/ ``` CGI Servlet ## JEP 413: Code Snippets in Java API DocumentationAPI Java 18 Javadoc `
{@code ...}
` ```java
{@code
    lines of source code
}
``` `
{@code ...}
` Java 18 `@snippet` ```java /** * The following code shows how to use {@code Optional.isPresent}: * {@snippet : * if (v.isPresent()) { * System.out.println("v: " + v.get()); * } * } */ ``` `@snippet` ## JEP 416: Reimplement Core Reflection with Method Handles Java 18 `java.lang.reflect.Method``Constructor` API OpenJDK ![](https://oss.javaguide.cn/github/javaguide/java/new-features/JEP416Benchmark.png) ## JEP 417: Vector API API Vector API [JEP 338](https://openjdk.java.net/jeps/338) [ API](http://openjdk.java.net/jeps/11) Java 16 [JEP 414](https://openjdk.java.net/jeps/414) Java 17 [JEP 417](https://openjdk.java.net/jeps/417) Java 18 [JEP 426](https://openjdk.java.net/jeps/426) Java 19 API CPU API ```java void scalarComputation(float[] a, float[] b, float[] c) { for (int i = 0; i < a.length; i++) { c[i] = (a[i] * a[i] + b[i] * b[i]) * -1.0f; } } ``` Vector API ```java static final VectorSpecies SPECIES = FloatVector.SPECIES_PREFERRED; void vectorComputation(float[] a, float[] b, float[] c) { int i = 0; int upperBound = SPECIES.loopBound(a.length); for (; i < upperBound; i += SPECIES.length()) { // FloatVector va, vb, vc; var va = FloatVector.fromArray(SPECIES, a, i); var vb = FloatVector.fromArray(SPECIES, b, i); var vc = va.mul(va) .add(vb.mul(vb)) .neg(); vc.intoArray(c, i); } for (; i < a.length; i++) { c[i] = (a[i] * a[i] + b[i] * b[i]) * -1.0f; } } ``` JDK 18 API ## JEP 418: Internet-Address Resolution SPI SPI Java 18 SPIservice-provider interface `java.net.InetAddress` ## JEP 419: Foreign Function & Memory API API Java API Java JVM JVM API Java JNI API Java 17 [JEP 412](https://openjdk.java.net/jeps/412) [JEP 419](https://openjdk.org/jeps/419) Java 18 [JEP 424](https://openjdk.org/jeps/424) Java 19 [Java 19 ](./java19.md) API
Web Proxy Viewer  |  New URL  |  Original Page