แแฅแแกแแแแแแ แแแแแแแแ แแแแก แจแแแแแ Oracle-แแ แแแแแฃแจแแ Java SE 17 (Java Platform, Standard Edition 17) แแแแขแคแแ แแ, แ แแแแแแช แแงแแแแแก OpenJDK แฆแแ แแแแแก แแ แแแฅแขแก, แ แแแแ แช แกแแชแแแแแ แ แแแแแแแแแขแแชแแแก. แแแแแแ แแ แแแซแแแแแแฃแแ แคแฃแแฅแชแแแก แแแฎแกแแแก แแแ แแ, Java SE 17 แแแแ แฉแฃแแแแก แแแแกแแแแแแแแก Java แแแแขแคแแ แแแก แฌแแแ แแแแแจแแแแแแแแ - แแแ แ แแแฌแแ แแแ Java แแ แแแฅแขแแแแก แฃแแแขแแกแแแ แแแแแ แแแฃแจแแแแแก แชแแแแแแแแแแก แแแ แแจแ, แ แแแแกแแช แแแจแแแแฃแแ แแฅแแแแ แแฎแแแ แแแ แกแแแ. Java SE 17-แแก แแแ แแแกแขแแแแชแแ (JDK, JRE แแ แกแแ แแแ แ JRE) แแแแแแแแแฃแแแ Linux-แแกแแแแก (x86_64, AArch64), Windows (x86_64) แแ macOS-แแกแแแแก (x86_64, AArch64). แจแแแฃแจแแแแแฃแแ OpenJDK แแ แแแฅแขแแก แแแแ , Java 17 แกแแชแแแแแ แ แแแแแแแแแขแแชแแ แแ แแก แกแ แฃแแแ แฆแแ แฌแงแแ แ GPLv2 แแแชแแแแแแ GNU ClassPath แแแแแแแแแแกแแแแ, แ แแช แกแแจแฃแแแแแแก แแซแแแแ แแแแแแแฃแ แ แแแแแแจแแ แแแ แแแแแ แชแแฃแ แแ แแแฃแฅแขแแแแแ.
Java SE 17 แแแแกแแคแแชแแ แแแฃแแแ, แ แแแแ แช แแ แซแแแแแแแแแ แแฎแแ แแแญแแ แแก (LTS) แแแแแจแแแแ, แ แแแแแแช แแแแแฎแแแแแแแก แแแฆแแแแก 2029 แฌแแแแแ แแแแแ แซแแแแแก. Java 16-แแก แฌแแแ แแแแแจแแแแแก แแแแแฎแแแแแแ แจแแฌแงแแแขแแแแ. Java 11-แแก แฌแแแ LTS แคแแแแแแ แแฎแแ แแแญแแ แแแ แแฅแแแแ 2026 แฌแแแแแ. แจแแแแแแ LTS แแแแแจแแแแ แแแแแแแแแแ 2024 แฌแแแก แกแแฅแขแแแแแ แจแ. แจแแแแฎแกแแแแแ, แ แแ Java 10-แแก แแแแแจแแแแแแแ แแแฌแงแแแฃแแ, แแ แแแฅแขแ แแแแแแแแ แแแแแแแแ แแแแก แแฎแแ แแ แแชแแกแแ, แ แแช แแฃแแแกแฎแแแแก แแฎแแแ แ แแแแแแแแก แคแแ แแแ แแแแก แฃแคแ แ แแแแแ แชแแแแก. แแฎแแแ แคแฃแแฅแชแแแแแแแแ แแฎแแ แแแแแแแแ แแแฃแแแ แแ แ แแฃแแแแแแ แแแแแฎแแแแฃแ แแแแแแ แคแแแแแแจแ, แ แแแแแแช แแแแชแแแก แแแ แชแแแแแแแแแก แแ แกแแแแแแแช แคแแแแแแแแ แแจแแแแ แงแแแแ แแฅแแก แแแแจแ แแ แแฎแแ แแฎแแแ แแแแแจแแแแแแแก แกแขแแแแแแแแชแแแก แแแแแแ.
Java 17-แแก แแฎแแแ แคแฃแแฅแชแแแแ แแแแชแแแก:
- แจแแแแแแแแแแแฃแแแ แจแแแแแแแก แจแแกแแขแงแแแกแแก แแฅแกแแแ แแแแแขแฃแแ แแแแฎแแ แชแแแแแแ "แแแแแแ แแแแแ" แแแแแแแแฅแแแแแแจแ, แ แแช แกแแจแฃแแแแแแก แแซแแแแ แแแแแแงแแแแก แแ แ แแฃแกแขแ แแแแจแแแแแแแแแ "แกแแฅแแแก" แแขแแแแขแแแจแ, แแ แแแแ แแแฅแแแแ แจแแแแแแแแ, แ แแแแแแแช แแ แแแ แแฃแแแ แคแแ แแแก แแแแจแแแแแแแแแแก แกแแ แแแก, แ แแกแแแแกแแช แแแ แ แกแแญแแ แ แแงแ แ แแฃแแ แแแแแงแแแแแ. โแแฃ...แกแฎแแโ แแแแแแฅแแแแแก แฏแแญแแแแ. แแแ แแ แแแแกแ, "แแแแ แแแแแก" แแฅแแก NULL แแแแจแแแแแแแแแแก แแแแฃแจแแแแแแก แจแแกแแซแแแแแแแ. แแแแแฅแขแ o = 123แ; แกแแแแแแแแ แคแแ แแแขแแ แแแฃแแ = switch (o) { case Integer i -> String.format("int %d", i); case Long l -> String.format("long %d", l); case Double d -> String.format("double %f", d); case String s -> String.format("แกแขแ แแฅแแแ %s", s); แแแแฃแแแกแฎแแแแ -> o.toString(); };
- แแแแฃแฅแฃแแ แแแแกแแแแกแ แแ แแแขแแ แคแแแกแแแแก แกแขแแแแแแแแแฃแแ แแฎแแ แแแญแแ แ, แ แแแแแแ แแแแแงแแแแแ แแ แจแแแซแแแแ แกแฎแแ แแแแกแแแแกแ แแ แแแขแแ แคแแแกแแแแก แแแแ แแแแแแแแแขแแชแแแก แแแแแแแแ แแแแแก, แแแคแแ แแแแแแก แแ แฃแแฃแแแแแแงแแคแแกแแแแก. แแแแฃแฅแฃแแ แแแแกแแแ แแกแแแ แแซแแแแ แฃแคแ แ แแแแแแ แแชแแฃแ แแแแก แกแฃแแแ แแแแกแแก แแแแแงแแแแแแก แจแแแฆแฃแแแแกแแแแก, แแแแ แ แฌแแแแแแก แแแแแคแแแแขแแ แแแ, แแแคแแ แแแแแแกแแแแก แแแจแแแแฃแแ แฅแแแแแแกแแแแก แชแแแกแแฎแแ แฉแแแแแแแแก แกแแคแฃแซแแแแแ. แแแแแขแ com.example.geometry; แกแแฏแแ แ แแแแฃแฅแฃแแ แแแแกแแก แคแแ แแแก แแแแแ แแแแแ com.example.polar.Circle, com.example.quad.Rectangle, com.example.quad.simple.Square {โฆ}
- แจแแแแแแแแแแแฃแแแ Vector API-แแก แแแแ แ แแแแแฎแแแแ, แ แแแแแแช แฃแแ แฃแแแแแงแแคแก แแแฅแขแแ แฃแแ แแแแแแแแแแแก แคแฃแแฅแชแแแแก, แ แแแแแแแช แจแแกแ แฃแแแแฃแแแ แแแฅแขแแ แฃแแ แแแกแขแ แฃแฅแชแแแแแก แแแแแงแแแแแแ x86_64 แแ AArch64 แแ แแชแแกแแ แแแแ แแ แกแแจแฃแแแแแแก แแซแแแแก แแแแ แแชแแแแก แแ แแแ แแฃแแแ แแแแแแงแแแแ แแ แแแแ แแแแจแแแแแแแแแ (SIMD). HotSpot JIT แจแแแแแแแแแจแ แแแแแแแแกแฌแแแแแฃแแ แจแแกแแซแแแแแแแแแแกแแแ แแแแกแฎแแแแแแแ แกแแแแแ แฃแแ แแแแ แแชแแแแแก แแแขแแแแขแฃแ แ แแแฅแขแแ แแแแชแแแกแแแแก, แแฎแแแ API แจแแกแแซแแแแแแก แฎแแแก แแแแคแแแ แแแแแแแขแ แแแแก แแแฅแขแแ แแแแชแแ แแแแแชแแแแ แแแ แแแแแฃแ แ แแแแฃแจแแแแแแกแแแแก.
- แแแแแขแแแฃแแแ แฃแชแฎแแฃแ แ แคแฃแแฅแชแแแกแ แแ แแแฎแกแแแ แแแแก API-แแก แแแแแฎแแแแ, แ แแแแแแช แแแแแแแชแแแแก แกแแจแฃแแแแแแก แแซแแแแก แฃแ แแแแ แแฅแแแแแ แแแแแแ แแ แแแแแชแแแแแแแ Java แแแจแแแแแก แแ แแแก แแแฆแแ. แแฎแแแ API แกแแจแฃแแแแแแก แแแซแแแแ แแคแแฅแขแฃแ แแ แแแแแแซแแฎแแ แแ แ-JVM แคแฃแแฅแชแแแแ แแ แจแแฎแแแแแ แแ แ-JVM-แแแ แแฃแ แแแฎแกแแแ แแแแแ. แแแแแแแแแ, แจแแแแซแแแแ แแแแแแซแแฎแแ แคแฃแแฅแชแแแแ แแแ แ แแแแแแ แแแฃแแ แแแแแแแแแแแแแแแ แแ แจแแฎแแแแแ แแ แแชแแกแแก แแแแแชแแแแแแ JNI แแแแแงแแแแแแก แแแ แแจแ.
- macOS-แแก แ แแแแแ แแก แซแ แแแ, แ แแแแแแช แแแฃแจแแแแแก Java 2D API-แก, แ แแแแแแช แแแแแก แแฎแ แแ แฃแแ แฃแแแแแงแแคแก Swing API-แก, แแแแแขแแ แแแฃแแแ แแแแแแแก แแ แแคแแแฃแแ API-แแก แแแแแกแแงแแแแแแแ. macOS แแแแขแคแแ แแ แแแ แซแแแแแก OpenGL-แแก แแแแแงแแแแแแก แแแแฃแแแกแฎแแแแแ แแ Metal-แแก แแฎแแ แแแญแแ แแก แฉแแ แแแ แแแแแฎแแแก โ-Dsun.java2d.metal=trueโ-แก แแแงแแแแแแก แแ แแแแแแฃแ macOS 10.14.x-แแก แแแจแแแแแก.
- แแแแแขแแแฃแแแ แแแ แขแ macOS/AArch64 แแแแขแคแแ แแแกแแแแก (Apple แแแแแแฃแขแแ แแแ, แ แแแแแแแช แแแคแฃแซแแแแฃแแแ แแฎแแ Apple M1 แฉแแแแแแ). แแแ แขแแก แแแแกแแแฃแแ แแแฃแแ แแแฎแแกแแแแแแแแแ W^X (Write XOR Execute) แแแฎแกแแแ แแแแก แแแชแแแก แแแฅแแแแแแแก แแฎแแ แแแญแแ แ, แ แแแแแก แแ แแกแแช แแแฎแกแแแ แแแแก แแแแ แแแแแ แแ แแแ แแฃแแแ แฌแแแแแ แจแแฃแซแแแแแแแ แฉแแกแแฌแแ แแ แแ แจแแกแแกแ แฃแแแแแแ. (แแแแแก แจแแกแ แฃแแแแ แจแแกแแซแแแแแแแ แแฎแแแแ แฉแแฌแแ แแก แแแแแ แแแแก แจแแแแแ, แฎแแแ แแแฎแกแแแ แแแแก แแแแ แแแ แฉแแฌแแ แ แจแแกแแซแแแแแแแ แแฎแแแแ แจแแกแ แฃแแแแแก แแแแแ แแแแก แจแแแแแ).
- แแแแ แฃแแแ แแฎแแแแ แแแแชแ แ fp แกแแแแแขแแแแก แแแแแงแแแแแ แแชแฃแ แแแ แฌแแ แขแแแแก แแแแแแแแฅแแแแแแแกแแแแก. "แแแแฃแแแกแฎแแแแ" แกแแแแแขแแแแก แแฎแแ แแแญแแ แ, แ แแแแแแช แฎแแแแแกแแฌแแแแแแ Java 1.2-แแก แแแแแกแแแแก แจแแแแแ, แจแแฌแงแแ, แแแ แจแแ แแก แกแแกแขแแแแแแ แแฃแจแแแแแก แแแแแ แขแแแแแแแ แซแแแแแ แซแแแแ x87 แแแแแแแขแแแแก แแแแ แแชแแกแแ แแแแ (SSE2 แแแกแขแ แฃแฅแชแแแแแก แแแแแฉแแแแก แจแแแแแ, แแแแแขแแแแแ แกแแแแแขแแแแก แกแแญแแ แแแแ แแแฅแ แ).
- แแแแแ แแแแแ แคแกแแแแแ แแแแแแฃแ แ แ แแชแฎแแแแแก แแแแแ แแขแแ แแแแก แแฎแแแ แขแแแแก แแแขแแ แคแแแกแแแ แแ แแแแแ แแแแแ แแแแแขแแแแแ แแแแแ แแแแแแ แจแแแแฎแแแแแแ แ แแชแฎแแแแแก แฃแแแแแกแ แแแแแ แแ แแแแกแแแแก. แแแแแแแชแแแแก แแซแแแแแ แจแแกแแซแแแแแแแ แแแ แฉแแแ แคแกแแแแแ แแแแแแฃแ แ แ แแชแฎแแแแแก แแแแแ แแ แแแแก แแแแแ แแแแ. แแแฃแแฏแแแแกแแแฃแแ แแฎแแ แแแญแแ แ แจแแแแฎแแแแแแ แแแแแฅแขแแแแก แแแแแแแแแก แแแแแ แแ แแแแกแแแแก.
- แแซแฃแแแแแแ แแแแชแ แ แแแแแคแกแฃแแแชแแ แงแแแแ JDK แแแขแแ แแแ แจแ, แแ แแขแแแฃแแ API-แแแแก แแแ แแ, แ แแแแ แแชแแ sun.misc.Unsafe. แแแแชแ แ แแแแแคแกแฃแแแชแแ แแแแแแแก แแแแแก แแชแแแแแแแแก แจแแแ แแแแกแแแแ, แแแแแแแแกแ แแ แแแแแแแ แฌแแแแแแกแแแแก. แแแ แ แแแแชแ แ แแแแแคแกแฃแแแชแแแก แ แแแแแแก แแแแแ แแแ แจแแแซแแแแแแ "--ilegal-access=permit" แแคแชแแแก แแแแแงแแแแแแ, แแแแ แแ แแก แฃแแแ แแแซแแแแแแฃแแแ. แแแแแแแชแแแแแ, แ แแแแแแแช แกแแญแแ แแแแแ แฌแแแแแแก แจแแแ แแแแกแแแแ, แแแแแแแแกแ แแ แแแแแแแ, แแแแแแ แฃแแแ แแแแกแแแฆแแ แแ แแกแแแ แแแแแคแแกแขแแก แคแแแแจแ --add-opens แแคแชแแแก แแ Add-Opens แแขแ แแแฃแขแแก แแแแแงแแแแแแ.
- แแแแแแแชแแแแก แแซแแแแแ แฃแแแ แ แแแแกแแแฆแแ แแ แแแแแชแแแแ แแแกแแ แแแแแแแชแแแก แคแแแขแ แแแ, แ แแแแแแแช แจแแแซแแแแ แแงแแก แแแแขแแฅแกแขแแ แแแ แซแแแแแแ แ แแ แแแแแแแฃแ แแ แจแแ แฉแแฃแแ แแแแแ แแขแฃแแ แแแกแแ แแแแแแแชแแแก แแแแ แแชแแแแแก แกแแคแฃแซแแแแแ. แแแแแแแแฃแแ แคแแแขแ แแแ แแแแแแงแแแแแ แแแแ แแแ แขแฃแแแฃแ แแแแฅแแแแแ (JVM-แกแแแ แชแ), แ.แ. แแแแชแแแก แแ แ แแฎแแแแ แแแแแ แแแแแแแชแแแก, แแ แแแแ แแแกแแแ แแฎแแ แแก แแแแแแแแแแแแก, แ แแแแแแแช แแแแแแงแแแแแ แแแแแแแชแแแจแ.
- Swing-แแ แแแแแแขแ javax.swing.filechooser.FileSystemView.getSystemIcon แแแแแแ แแแแ แฎแแขแแแแก แฉแแกแแขแแแ แแแ แแแฆแแแ DPI แแแ แแแแแแ แแแขแแ แคแแแกแแก แแแกแแฃแแฏแแแแกแแแแแ.
- java.net.DatagramSocket API แฃแแ แฃแแแแแงแแคแก Multicast แฏแแฃแคแแแแแ แแแแแแจแแ แแแแก แแฎแแ แแแญแแ แแก แชแแแแ java.net.MulticastSocket API-แแก แกแแญแแ แแแแแก แแแ แแจแ.
- แแแฃแแฏแแแแกแแ IGV (Ideal Graph Visualizer) แแ แแแ แแแ, แ แแแแแแช แฃแแ แฃแแแแแงแแคแก แจแฃแแแแแฃแ แ แแแแแก แฌแแ แแแแแแแแก แแแขแแ แแฅแขแแฃแ แแแแฃแแแแแแชแแแก HotSpot VM C2 JIT แจแแแแแแแแแจแ.
- JavaDoc-แจแ, javac แจแแแแแแแแแก แแแแแแแแแ, แจแแชแแแแแก แแแแแขแแแแกแแก แแฎแแ แแแแแแแแฃแแแ แฌแงแแ แแก แคแแแแจแ แแ แแแแแแฃแ แ แฎแแแแก แ แแแแแแแแ แแ แจแแชแแแแแก แแแแแแ แแแแ.
- แแแแแขแแแฃแแแ native.encoding แแแแกแแแ, แ แแแแแแช แแกแแฎแแแก แกแแกแขแแแแก แกแแแแแแแแแแก แแแแแ แแแแก แกแแฎแแแก (UTF-8, koi8-r, cp1251 แแ แ.แจ.).
- แแแแแขแแแฃแแแ java.time.InstantSource แแแขแแ แคแแแกแ, แ แแแแแแช แแซแแแแ แแ แแแก แแแแแแฃแแแ แแแแก แกแแจแฃแแแแแแก แแ แแแก แกแแ แขแงแแแแ แแแแแแแแแก แแแ แแจแ.
- แแแแแขแแแฃแแแ java.util.HexFormat API แแแฅแแกแแแขแแแแ แแแแแกแแฎแฃแแแแแจแ แแแแแกแแงแแแแแ แแ แแแ แแฅแแ.
- แจแแแแแแแแแก แแแแแแขแ แจแแแ แฎแแ แแแแก แ แแแแแ, แ แแแแแแช แแแแแ แแแแก แแแแแแ แ แแแแแก แแฆแแแคแฎแแ แแก แแแแ แแชแแแแก, แ แแแแแแ แแแแแงแแแแแ แจแแกแแซแแแแแแแ แจแแกแ แฃแแแแแก แขแแกแขแแแแก แฉแแขแแ แแแแกแแก.
- Runtime-แก แแแแแแขแ โ-Xlog:asyncโ แแคแชแแ, แ แแ แฉแแฌแแ แแ แแฃแ แแแแ แแกแแแฅแ แแแฃแ แ แแแแแจแ.
- แฃแกแแคแ แแฎแ แแแแจแแ แแแแก แแแแงแแ แแแแกแแก, TLS 1.3 แฉแแ แแฃแแแ แแแแฃแแแกแฎแแแแแ (แแแ แ แแแแแแงแแแแแแแ TLS 1.2).
- แแแ แ แแแแแชแฎแแแแแฃแแ แแแซแแแแแแฃแแ แแแแแขแแก API (java.applet.Applet*, javax.swing.JApplet), แ แแแแแแช แแแแแแงแแแแแแแ แแ แแฃแแแ แจแ Java แแแแแแแชแแแแแก แแแกแแจแแแแแ, แแแแแขแแแแแแ แแแกแแฎแกแแแแแ แแแแแจแแฃแ แแแขแแแแ แแแจแ (แแแแแ แแ แจแแกแแแแแแกแแแ แแฎแแ แแแญแแ แแก แแแกแ แฃแแแแแก แจแแแแแ. แแ แแฃแแแ แแแแกแแแแก Java แแแแฃแแแกแแแแก).
- แฃแกแแคแ แแฎแแแแแก แแแแแฏแแ แ, แ แแแแแแแช แแแแ แฎแแแแ แแแแแ แแ แแฅแขแฃแแแแแ แแ แแ แแฃแแแ แแก แแแแฃแแแก แแฎแแ แแแญแแ แแก แแแกแ แฃแแแแแก แจแแแแแ แแฆแแแฉแแแ แฃแแ แแชแแแแแขแ, แแแแแแแแ แแ แแแขแแแแ แแแจแ, แ แแแแแแแช แแแแแแแแแแ แฌแแจแแ.
- RMI แแฅแขแแแแชแแแก แแแฅแแแแแแ แแแแฆแแแฃแแแ, แ แแแแแแช แแแซแแแแแแฃแแแ, แแแแแงแแแแแแแ Java 8-แแก แแคแชแแแแแก แแแขแแแแ แแแจแ แแ แแแแฅแแแก แแ แแกแแแแก แแแแแแงแแแแแ แแแแแแแแ แแแ แแ แแฅแขแแแแจแ.
- แแฅแกแแแ แแแแแขแฃแแ แจแแแแแแแแแ, แ แแแแแแช แแฎแแ แก แฃแญแแ แก JIT-แก (แฃแแ แแแแ แแ แแฃแแแ) แฏแแแแก แแแแแก แแแแแแแฃแ แ แแแแแแแแชแแแกแแแแก HotSpot JVM-แแกแแแแก, แแกแแแ แแแแกแแแแก แฌแแแแกแฌแแ แ แจแแแแแแแก แ แแแแแก (AOT, แฌแแแแกแฌแแ ) แแแแฅแแแฃแ แแแแจแ แแแ แขแฃแแแฃแ แ แแแแฅแแแแก แแแฌแงแแแแแแ. , แแแแฆแแแฃแแแ SDK-แแแ. แจแแแแแแแแแ แแแแฌแแ แ แฏแแแแจแ แแ แแคแฃแซแแแแแแ Graal แแ แแแฅแขแแก แแฃแจแแแแแก. แแฆแแแจแแฃแแแ, แ แแ แแแแแแแแ แแก แแแแแ แแแแแฎแแแก แแแ แจแ แแแแก, แ แแช แแ แแ แแก แแแแแ แแแแแฃแแ, แ แแชแ แแแแแแแแแ แแแแก แแฎแ แแแแ แแแแฎแแแแ แแ แแ แแก.
แฌแงแแ แ: opennet.ru