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

--- title: Java 18 category: Java tag: - Java --- Java 18 2022 3 22 Java 18 9 - [JEP 400:UTF-8 by Default UTF-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 DocumentationJava API ](https://openjdk.java.net/jeps/413) - [JEP 416:Reimplement Core Reflection with Method Handles](https://openjdk.java.net/jeps/416) - [JEP 417:Vector API ](https://openjdk.java.net/jeps/417) - [JEP 418:Internet-Address ResolutionSPI](https://openjdk.java.net/jeps/418) - [JEP 419:Foreign Function & Memory API API](https://openjdk.java.net/jeps/419) - [JEP 420:Pattern Matching for switchswitch ](https://openjdk.java.net/jeps/420) - [JEP 421:Deprecate Finalization for Removal](https://openjdk.java.net/jeps/421) Java 17 14 Java 16 17 Java 15 14 Java 14 16 Java 18 400408413416417418419 - [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 JDK UTF-8 Java 17 Java Mac Java Windows ## JEP 408: 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: Java API 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: Java 18 `java.lang.reflect.Method``Constructor` API OpenJDK ![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/github/javaguide/java/new-features/JEP416Benchmark.png) ## JEP 417: 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: SPI Java 18 SPIservice-provider interface `java.net.InetAddress` ## JEP 419:Foreign Function & Memory 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