Java SE 19 เป€เบ›เบตเบ”เบ•เบปเบง

เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบซเบปเบเป€เบ”เบทเบญเบ™, Oracle เป„เบ”เป‰เบ›เปˆเบญเบเปเบžเบฅเบ”เบŸเบญเบก Java SE 19 (Java Platform, Standard Edition 19), เป€เบŠเบดเปˆเบ‡เปƒเบŠเป‰เป‚เบ„เบ‡เบเบฒเบ™ OpenJDK เปเบšเบšเป‚เบญเป€เบžเบ™เบŠเบญเบชเป€เบ›เบฑเบ™เป€เบญเบเบฐเบชเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡. เบเบปเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบฅเบถเบšเบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเปœเบฑเบšเบชเบฐเปœเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบญเบญเบ, Java SE 19 เบเบฑเบ‡เบ„เบปเบ‡เบฎเบฑเบเบชเบฒเบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบเบฑเบšเปเบžเบฅเบ”เบŸเบญเบก Java เบฅเบธเป‰เบ™เบเปˆเบญเบ™เปœเป‰เบฒเบ™เบตเป‰ - เป‚เบ„เบ‡เบเบฒเบ™ Java เบ—เบตเปˆเบ‚เบฝเบ™เป„เบงเป‰เบเปˆเบญเบ™เปœเป‰เบฒเบ™เบตเป‰เบชเปˆเบงเบ™เปƒเบซเบเปˆเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เป€เบกเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบžเบฒเบเปƒเบ•เป‰เบฅเบธเป‰เบ™เปƒเปเปˆ. เบฅเบธเป‰เบ™เบ—เบตเปˆเบžเป‰เบญเบกเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ‚เบญเบ‡ Java SE 19 (JDK, JRE, เปเบฅเบฐ Server JRE) เปเบกเปˆเบ™เบเบฝเบกเบžเป‰เบญเบกเบชเบณเบฅเบฑเบš... Linux (x86_64, AArch64), Windows (x86_64) เปเบฅเบฐ macOS (x86_64, AArch64). เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบเป‚เบ„เบ‡เบเบฒเบ™ OpenJDK, เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡ Java 19 เปเบกเปˆเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบขเปˆเบฒเบ‡เบ„เบปเบšเบ–เป‰เบงเบ™เบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” GPLv2 เบžเป‰เบญเบกเบ”เป‰เบงเบเบ‚เปเป‰เบเบปเบเป€เบงเบฑเป‰เบ™ GNU ClassPath, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบเบเบฑเบšเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™เบ„เป‰เบฒ.

Java SE 19 เบ–เบทเบเบˆเบฑเบ”เป€เบ›เบฑเบ™เบฅเบธเป‰เบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบปเปˆเบงเป„เบ›เปเบฅเบฐเบˆเบฐเบชเบทเบšเบ•เปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบˆเบปเบ™เบเปˆเบงเบฒเบเบฒเบ™เบ›เปˆเบญเบเบ•เปเปˆเป„เบ›. เบชเบฒเบ‚เบฒเบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเป„เบฅเบเบฐเบเบฒเบง (LTS) เบ„เบงเบ™เป€เบ›เบฑเบ™ Java SE 17, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบชเบทเบšเบ•เปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบˆเบปเบ™เบเปˆเบงเบฒ 2029. เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบ•เบทเบญเบ™เบ—เปˆเบฒเบ™เบงเปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเบ‚เบญเบ‡ Java 10, เป‚เบ„เบ‡เบเบฒเบ™เป„เบ”เป‰เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเปƒเบซเบกเปˆ, เป€เบŠเบดเปˆเบ‡เบซเบกเบฒเบเป€เบ–เบดเบ‡เบงเบปเบ‡เบˆเบญเบ™เบ—เบตเปˆเบชเบฑเป‰เบ™เบเบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบ•เบฑเป‰เบ‡เบเบฒเบ™เบ›เปˆเบญเบเปƒเบซเบกเปˆ. เบŸเบฑเบ‡เบŠเบฑเบ™เปƒเบซเบกเปˆเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบขเบนเปˆเปƒเบ™เบชเบฒเบ‚เบฒเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเปเบฅเบฐเบˆเบฒเบเบชเบฒเบ‚เบฒเปƒเบ”เบ–เบทเบเปเบเบเบญเบญเบเบ—เบธเบเป†เบซเบปเบเป€เบ”เบทเบญเบ™เป€เบžเบทเปˆเบญเบชเบฐเบ–เบฝเบ™เบฅเบฐเบžเบฒเบšเบเบฒเบ™เบ›เปˆเบญเบเปƒเบซเบกเปˆ.

เบ„เบธเบ™เบ™เบฐเบชเบปเบกเบšเบฑเบ”เปƒเบซเบกเปˆเปƒเบ™ Java 19 เบ›เบฐเบเบญเบšเบกเบต:

  • เบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบฎเบนเบšเปเบšเบšเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเป„เบ”เป‰เบ–เบทเบเบชเบฐเป€เบซเบ™เบต, เบ‚เบฐเบซเบเบฒเบเบฅเบฑเบเบชเบฐเบ™เบฐเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™ Java 16 เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบเบเบ„เปˆเบฒเบ‚เบญเบ‡เบซเป‰เบญเบ‡เบฎเบฝเบ™เบšเบฑเบ™เบ—เบถเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡: record Point(int x, int y) {} void printSum(Object o) { if (o instanceof Point(int x, int y)) { System.out.println(x+y); } }
  • เปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบกเบชเบณเบฅเบฑเบš Linux เบกเบตเบเบฒเบ™เบฎเบญเบ‡เบฎเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบณ RISC-V.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบชเปเบฒเบฅเบฑเบš FFM (Foreign Function & Memory) API, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบˆเบฑเบ”เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบ‚เบญเบ‡เป‚เบ›เปเบเบก Java เบ”เป‰เบงเบเบฅเบฐเบซเบฑเบ”เปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบžเบฒเบเบ™เบญเบเป‚เบ”เบเบเบฒเบ™เป€เบญเบตเป‰เบ™เบŸเบฑเบ‡เบŠเบฑเบ™เบˆเบฒเบเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบžเบฒเบเบ™เบญเบเปเบฅเบฐเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบžเบฒเบเบ™เบญเบ JVM.
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฐเบ—เบนเป‰ virtual, เป€เบŠเบดเปˆเบ‡เปเบกเปˆเบ™เบเบฐเบ—เบนเป‰เบ—เบตเปˆเบกเบตเบ™เป‰เปเบฒเบซเบ™เบฑเบเป€เบšเบปเบฒเบ—เบตเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบ‚เบฝเบ™เบ‡เปˆเบฒเบเปเบฅเบฐเบเบฒเบ™เบฎเบฑเบเบชเบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบกเบตเบ›เบฐเบชเบดเบ”เบ•เบดเบžเบฒเบšเบชเบนเบ‡เบซเบผเบฒเบ.
  • เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบชเบตเปˆเบ‚เบญเบ‡ Vector API เป„เบ”เป‰เบ–เบทเบเบชเบฐเป€เบซเบ™เบต, เบชเบฐเบซเบ™เบญเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆ vector เบ—เบตเปˆเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ vector เปƒเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต x86_64 เปเบฅเบฐ AArch64 เปเบฅเบฐเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบžเป‰เบญเบกเบเบฑเบ™เบเบฑเบšเบ„เปˆเบฒเบซเบผเบฒเบ (SIMD). เบšเปเปˆเป€เบซเบกเบทเบญเบ™เบเบฑเบšเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เปƒเบ™ HotSpot JIT compiler เบชเปเบฒเบฅเบฑเบšเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ” vectorization เบ‚เบญเบ‡เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™ scalar, API เปƒเบซเบกเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ„เบงเบšเบ„เบธเบก vectorization เบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบฐเบซเบ™เบฒเบ™.
  • เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเบชเบฒเบกเบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบฎเบนเบšเปเบšเบšเปƒเบ™ "เบชเบฐเบซเบผเบฑเบš" เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เป‰เบฒเบ "เบเปเบฅเบฐเบ™เบต" เปƒเบŠเป‰เบšเปเปˆเปเบกเปˆเบ™เบ„เปˆเบฒเบ—เบตเปˆเปเบ™เปˆเบ™เบญเบ™, เปเบ•เปˆเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบเบงเบกเป€เบญเบปเบฒเบŠเบธเบ”เบ‚เบญเบ‡เบ„เปˆเบฒเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เป€เบŠเบดเปˆเบ‡เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เปƒเบŠเป‰เบ•เปˆเบญเบ‡เป‚เบชเป‰เบ—เบตเปˆเบซเบเบธเป‰เบ‡เบเบฒเบ. เบ‚เบญเบ‡ "เบ–เป‰เบฒ ... เบญเบทเปˆเบ™" เบชเบฐเปเบ”เบ‡เบญเบญเบ. เบงเบฑเบ”เบ–เบธ o = 123L; String formatted = switch (o) { case Integer i -> String.format("int %d", i); case Long l -> String.format("เบเบฒเบง %d",l); case Double d -> String.format("double %f", d); case String s -> String.format("String %s", s); default -> o.toString(); };
  • เป€เบžเบตเปˆเบก API เบ—เบปเบ”เบฅเบญเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ™เบ—เบตเปˆเบกเบตเป‚เบ„เบ‡เบชเป‰เบฒเบ‡, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบซเบผเบฒเบเบเบฐเบ—เบนเป‰เบ‡เปˆเบฒเบเป‚เบ”เบเบเบฒเบ™เบ›เบดเปˆเบ™เบ›เบปเบงเบซเบผเบฒเบเบงเบฝเบเบ—เบตเปˆเปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบซเบปเบงเบ‚เปเป‰เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เป€เบ›เบฑเบ™เบšเบฅเบฑเบญเบเบ”เบฝเบง.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เบŠเบทเป‰เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ DDoS, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ VPS VDS ๐Ÿ”ฅ เบŠเบทเป‰เป€เบงเบฑเบšเป„เบŠเบ—เปŒเป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบ”เป‰เบงเบเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ DDoS, เป€เบŠเบตเบšเป€เบงเบต VPS VDS | ProHoster