แแฅแแกแแแแแแ แจแแแฃแจแแแแแแก แจแแแแแ, Oracle-แแ แแแแแฃแจแแ Java SE 27 (Java Platform, Standard Edition 27), แ แแแแแแช แฆแแ แแแแแก OpenJDK แแ แแแฅแขแก แแงแแแแแก, แ แแแแ แช แกแแชแแแแแ แ แแแแแแแแแขแแชแแแก. แแแแแแ แแ แแแซแแแแแแฃแแ แคแฃแแฅแชแแแก แแแแฆแแแแก แแแ แแ, Java SE 27 แแแแ แฉแฃแแแแก แฃแแฃแแแแกแแแแแแแแก Java แแแแขแคแแ แแแก แฌแแแ แแแ แกแแแแแแ - แแแ แ แแแฌแแ แแแ Java แแ แแแฅแขแแแแก แฃแแแขแแกแแแ แฃแชแแแแแ แแแฃแจแแแแแก แแฎแแแ แแแ แกแแแ แแฃแจแแแแแกแแก. Java SE 27-แแก แแแกแขแแแแชแแแกแแแแก แแแ แแแ แกแแแแ (JDK, JRE แแ Server JRE) แแแแแแแแแฃแแแ... Linux (x86_64, AArch64), Windows (x86_64) แแ macOS (x86_64, AArch64). OpenJDK แแ แแแฅแขแแก แแแแ แจแแแฃแจแแแแแฃแแ, Java SE 27-แแก แกแแชแแแแแ แ แแแแแแแแแขแแชแแ แกแ แฃแแแ แฆแแ แแแแแกแแ GPLv2 แแแชแแแแแแ GNU ClassPath แแแแแแแแแแกแแ, แ แแแแแแช แแแแแ แชแแฃแ แแ แแแฃแฅแขแแแแแ แแแแแแแฃแ แ แแแแจแแ แแก แกแแจแฃแแแแแแก แแซแแแแ.
Java SE 27 แแแขแแแแ แแแแแฃแแแ, แ แแแแ แช แ แแแฃแแแ แฃแแ แแฎแแ แแแญแแ แแก แแแ แกแแ, แ แแแแแก แแแแแฎแแแแแแ แแแแแแ แจแแแแแ แแแ แกแแแแแ. แแ แซแแแแแแแแแ แแฎแแ แแแญแแ แแก (LTS) แแแแจแขแแแแ แฃแแแ แแงแแก Java SE 25, Java SE 21 แแ Java SE 17, แแแแแฎแแแแแแ แแแแแแ แจแแกแแแแแแกแแ 2033, 2031 แแ 2029 แฌแแแแแ (แแแแแแแ แฎแแแแแกแแฌแแแแแแ 2030, 2028 แแ 2026 แฌแแแแแก แกแแฅแขแแแแ แแแแ). Java SE 8 LTS แแแแจแขแแแแแก แแแคแแ แแแแแฃแแ แแฎแแ แแแญแแ แ แแแแ แซแแแแแแ 2030 แฌแแแแแ, แฎแแแ Java SE 11-แแก - 2032 แฌแแแแแ.
Java SE 27-แจแ (1, 2, 3, 4) แจแแขแแแแแ แชแแแแแแแแแ แแแแชแแแก:
- แแแแฃแแแกแฎแแแแแ, แงแแแแ แแแ แแแ แแงแแแแแก G1 (Garbage-First) แแแแแแก แจแแแแ แแแแแแแก, แ แแแแแแช แแแ แ แกแแ แแแ แฃแแ แกแแกแขแแแแแแกแแแแก แแแแแแงแแแแแแแ. G1 แแแขแแแแแแแฃแแแ แแแแ แแแฎแกแแแ แแแแก แขแแแแแแแแก แแฅแแแ แแ แแแแแแ แแชแแกแแ แฃแ แกแแกแขแแแแแแ แแแแแกแแงแแแแแแแ แแ แแแฆแแแ แแแแขแแ แฃแแแ แแแแแแแก แแ แแแแแแแ แแแแแ แจแแงแแแแแแแก แแแแแแแแกแแแแกแแแแก. แแฃแจแแแแแก แแ แแก, G1 แแแฎแกแแแ แแแแก แแ แแแแ แแชแแ แ แ แแแแแแแ แงแแคแก แแ แแ แแแ แแขแแขแก แแแแญแแแก แแ แ แแแแแแแแก, แกแแแแช แแแขแ แแแแแฃแงแแแแแแแ แแแแแฅแขแ แแ แแแแแแแแ แแฅแขแแฃแ แ แฌแแแแแแ แแแแแชแแแแแแ.
- HotSpot JVM แกแขแแแแแ แขแฃแแแ แแงแแแแแก แแแแแแฅแขแฃแ แ แแแแแฅแขแแแแก แกแแแแฃแ แแแก. 64-แแแขแแแ แกแแกแขแแแแแแ แกแแแแฃแ แแก แแแแ แจแแแชแแ แแ 96-แแแ 64 แแแขแแแแ, แ แแช แแแชแแ แแแก แแแฎแกแแแ แแแแก แแแฎแแแ แแแแก แแ แแ แแแก แแแแแชแแแแแแก แแ แแชแแกแแ แแก แฅแแจแจแ แแแฎแแแแ แแก แแแแแแแแแก. SPECjbb2015 แขแแกแขแแแจแ แแแฎแกแแแ แแแแก แแแฎแแแ แแแ แจแแแชแแ แแ 22%-แแ, แแ แแชแแกแแ แแก แแแขแแแ แแแ 8%-แแ, แฎแแแ แแแแแแก แจแแแ แแแแแแก แแแแ แแชแแแแแก แ แแแแแแแแ 15%-แแ. JSON แแแ แกแแ แแก แขแแกแขแแ แแแแก แแ แ แจแแแชแแ แแ 10%-แแ.
- TLS 1.3 แแแแแแแแแขแแชแแ แแฎแแ แก แฃแญแแ แก แฐแแแ แแแฃแแ แแแกแแฆแแแแก แจแแแแแฎแแแแแก แกแฅแแแแแก, แ แแแแแแแช แแแ แแแแแแแแ แแแแแขแฃแ -แ แแแแกแขแแแขแฃแ ML-KEM (CRYSTALS-Kyber) แแแแแ แแแแก แแแแกแแแฃแ ECDHE แแแแคแกแฃแ แ แแ แฃแแแก แแแแแ แแแแแแแแ: X25519MLKEM768 (ECDHE X25519 แแ แฃแแแ + ML-KEM-768), SecP256r1MLKEM76 (ECDHE secp256r1 แแ แฃแแแ + ML-KEM-768) แแ SecP384r1MLKEM1024 (ECDHE secp384r1 แแ แฃแแแ + ML-KEM-1024). javax.net API-แจแ.ssl แแก แกแฅแแแแแ แแแแฃแแแกแฎแแแแแ แฉแแ แแฃแแแ แแ แแแแแกแแงแแแแแแแ แแแแแแแชแแแจแ แ แแแแ แชแแแแแแแแก แแ แกแแญแแ แแแแก.
- JDK Flight Recorder (JFR), แแแกแขแ แฃแแแแขแ, แ แแแแแแช แแแแแแงแแแแแ แจแแกแ แฃแแแแแก แแแแแขแแ แแแแแกแแแแก, แแ แแคแแแแ แแแแกแแแแก แแ แแแแแแแกแขแแแแกแแแแก, แแฎแแ แแฎแแ แก แฃแญแแ แก แแ แซแแแแแแก แฎแแแแก แแ แแฃแแแแขแแแแก, แแแ แแแแก แชแแแแแแแแก แกแแฌแงแแกแ แแแแจแแแแแแแแแแก แแ แกแแกแขแแแแก แแแแกแแแแแแก แแแแแแคแแฅแชแแแก แจแแแแฎแฃแ แแแแแแแกแขแแแฃแ แแแคแแ แแแชแแแจแ. แแก แชแแแแแแแ แฎแแแก แฃแจแแแก แแ แแคแแแแ แแแฃแแ แแ แแชแแกแแก แแแแ แแแแฃแจแแแแแฃแแ แแแ แซแแแแแแ แ แแแแแชแแแแแแก, แ แแแแ แแชแแ แแแขแแ แแแแชแแแก แแแจแแแแ แแ แแแ แแแแก แชแแแแแแแแก แแแจแแแแแแ แแแแแชแแแฃแแ API แฌแแแแแแก แแแกแแฆแแแแแ, แแแแแแแแก.
- Lazy Constants API-แแก แแแกแแแ แฌแแแแกแฌแแ แ แแแ แกแแ แแแแแ แแแแแ แฃแชแแแแแ แแแแแชแแแแแแก แจแแแชแแแ แแแแแฅแขแแแแแ แกแแแฃแจแแแ, แ แแแแแแแช JVM-แจแ แแฃแแแแแแแแ แแแแแฎแแแแแ. แแกแแ แแแแแฅแขแแแแ แแแแแแงแแแแแ "final" แกแแแแแแซแ แกแแขแงแแแก แแฅแแแ แแแแแแแก แแกแแแแกแ แจแแกแ แฃแแแแแก แแแขแแแแแแชแแ. "final"-แแกแแแ แแแแกแฎแแแแแแแ, แแฎแแแ API แแแแแงแแคแก แแฃแแแแแ แแแแจแแแแแแแแแแก แจแแฅแแแแก แแแแ แแแแชแแแแแแแชแแแกแแแ, แแแ แแแขแแแก แแซแแแแ, แ แแ แแแแจแแแแแแแแก แแแแชแแแแแแแชแแ แแฎแแแแ แแ แแฎแแ แจแแแซแแแแ, แแแชแแ แแแก แแ แแแ แแแแก แแแจแแแแแก แแ แแก แแ แกแแจแฃแแแแแแก แแซแแแแ, แแแแฎแแแ แแแแแก แแแแจแ แแแแแงแแแแแฃแ แแฅแแแก แแฃแแแแแ แแแแแชแแแก แแแขแแแแแแชแแ, แ แแแแแแช แแแ แ แแฎแแแแ JDK-แแก แจแแแ แแแแจแ แแแแแแงแแแแแแแ. class Application { // แแแ แ: // static final UserService USERS = new UserService(); // แแฎแแ: static final StableValue USERS = StableValue.of(); public static UserService users() { return USERS.orElseSet(UserService::new); } }
- แจแแแแแแแแแก แจแแกแแแแแแกแแแแก แซแ แแแ แฌแแ แแแแแแแแแแก แแ แแแแขแแฃแแ แขแแแแแแก (int, byte, char แแ แกแฎแแ แแ แแแแแแฅแขแฃแ แ แแแแแกแฃแ แ แขแแแแแ) แแแแแงแแแแแแก แจแแกแแซแแแแแแแแก แแแฎแฃแแ แแแ แกแแแก แงแแแแ แกแแฎแแก แจแแแแแแจแ, แแแแ แแขแแ แแก แแแกแขแแแแจแ แแ แแแแฃแขแแขแแ แแก แแแแแแแจแ. switch (x.getStatus()) { case 0 -> "okay"; case 1 -> "warning"; case 2 -> "error"; case int i -> "unknown status: " + i; } if (i instanceof byte b) { โฆ b โฆ }
- แขแแกแขแแ แแแแกแแแแก แแแแแแแแ แกแขแ แฃแฅแขแฃแ แแ แแแฃแแ แแแ แแแแแฃแ แ API-แแก แแแจแแแแ แแแ แกแแ, แ แแแแแแช แแแแ แขแแแแแก แแ แแแแแซแแคแแแแ แแแแแแแชแแแแแก แจแแแฃแจแแแแแแก แกแฎแแแแแกแฎแแ แแแแแแแ แแแจแแแแฃแแ แแ แแแแแ แแแแแแแแแก แแ แ แแ แแแฃแแแ แแแแฎแแแแแ.
- Vector API-แแก แแแแแ แแแขแ แกแแขแแกแขแ แแแแแแแแแขแแชแแ แแแแฎแแ แชแแแแแ. แแก API แฃแแ แฃแแแแแงแแคแก แคแฃแแฅแชแแแแก แแแฅแขแแ แฃแแ แแแแแแแแแแแกแแแแก, แ แแแแแแแช แจแแกแ แฃแแแแฃแแแ x86_64 แแ AArch64 แแ แแชแแกแแ แแก แแแฅแขแแ แฃแแ แแแกแขแ แฃแฅแชแแแแแก แแแแแงแแแแแแ แแ แกแแจแฃแแแแแแก แแซแแแแ แแ แแแ แแฃแแแ แแแแฎแแ แชแแแแแแก แแแแ แแชแแแแ แแ แแแแ แแแแจแแแแแแแแแ (SIMD). HotSpot JIT แแแแแแแแขแแ แแก แกแแแแแ แฃแแ แแแแ แแชแแแแแก แแแขแแแแขแฃแ แ แแแฅแขแแ แแแแชแแแกแแแ แแแแกแฎแแแแแแแ, แแฎแแแ API แกแแจแฃแแแแแแก แแซแแแแ แแฅแกแแแแชแแขแฃแ แ แแแแขแ แแแแก แแแแฎแแ แชแแแแแแ แแแฅแขแแ แแแแชแแแแ แแแ แแแแแฃแ แ แแแแแชแแแแ แแแแฃแจแแแแแแกแแแแก.
- API-แแก แแแกแแแ แแแ แกแแ แฃแแแ แฎแแแแแกแแฌแแแแแแ แแ แแแขแแแ แแคแแฃแแ แแแกแแฆแแแแแแก, แกแแ แขแแคแแแแขแแแแก แแ แกแแ แขแแคแแแแขแแแแก แแแฃแฅแแแแแก แกแแแแแก แจแแแชแแแแ แแแแแฅแขแแแแก แแแแแ แแแแกแ แแ แแแแแแแ แแแแกแแแแก PEM (Pivacy-Enhanced Mail) แคแแ แแแขแแก แแแแแงแแแแแแ.
แแแ แแ แแแแกแ, แกแแแแแแแแแแ แแแชแแแแแแ แแ แแคแแแฃแแ แแแขแแ แคแแแกแแก แแแแแแแชแแแแแก แจแแกแแฅแแแแแแ JavaFX 27 แแแแขแคแแ แแแก แแแแแฎแแแแแก แแแแแจแแแแแก. แฃแแฎแแแแก แกแแแแแแจแ แแกแแแ แแแกแแแแแแแแแ GraalVM 27 แฃแแแแแ แกแแแฃแ แ แแแ แขแฃแแแฃแ แ แแแแฅแแแแก แแแแแจแแแแ, แ แแแแแแช แแฎแแ แก แฃแญแแ แก JavaScript-แแก (Node.js), Python-แแก, Ruby-แแก, R-แแก, แแแแแกแแแแ แ JVM แแแแก (Java, Scala, Clojure, Kotlin) แแ LLVM แแแขแแแแแก แแแแแ แแ แแแแก (C, C++, Rust) แแแแแแแชแแแแแก แแแจแแแแแก.
แฌแงแแ แ: opennet.ru
