เบซเบผเบฑเบเบเบฒเบเบซเบปเบเปเบเบทเบญเบเบเบญเบเบเบฒเบเบเบฑเบเบเบฐเบเบฒ, Oracle เปเบเปเบเปเบญเบเปเบเบฅเบฐเบเบฐเบเบญเบก Java SE 19 (Java Platform, Standard Edition 19), เปเบเบดเปเบเปเบเปเปเบเบเบเบฒเบเปเบซเบผเปเบเปเบเบตเบ OpenJDK เปเบเบฑเบเบเบฒเบเบเบฐเบเบดเบเบฑเบเบเบฒเบเบญเปเบฒเบเบญเบตเบ. เบกเบตเบเปเปเบเบปเบเปเบงเบฑเปเบเบเบฒเบเบเปเบฒเบเบฑเบเบเบฒเบเบฅเบฑเบเบชเบฐเบเบฐเบเบตเปเบเบทเบเบเบปเบเปเบฅเบตเบ, Java SE 19 เบฎเบฑเบเบชเบฒเบเบงเบฒเบกเปเบเบปเปเบฒเบเบฑเบเปเบเปเบเบฑเบเบฅเบธเปเบเบเบตเปเบเปเบฒเบเบกเบฒเบเบญเบเปเบเบฅเบฐเบเบฐเบเบญเบก Java - เปเบเบเบเบฒเบ Java เบเบตเปเบเบฝเบเปเบงเปเบเปเบญเบเบซเบเปเบฒเบเบตเปเบเบฐเบเบฑเบเปเบฎเบฑเบเบงเบฝเบเปเบเบเบเปเปเบกเบตเบเบฒเบเบเบฑเบเปเบเบเปเบเปเบงเบฅเบฒเบเบตเปเบเปเบฒเปเบเบตเบเบเบฒเบเบเบฒเบเปเบเปเบชเบฐเบเบฑเบเปเบซเบกเป. เบเบฒเบเบเปเปเบชเปเบฒเบเบเปเบญเบกเบเบดเบเบเบฑเปเบเบเบญเบ Java SE 19 (JDK, JRE, เปเบฅเบฐเปเบเบตเบเปเบงเบต 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 ะฟัะพะตะบั ะฟะตัะตััะป ะฝะฐ ะฝะพะฒัะน ะฟัะพัะตัั ัะฐะทัะฐะฑะพัะบะธ, ะฟะพะดัะฐะทัะผะตะฒะฐััะธะน ะฑะพะปะตะต ะบะพัะพัะบะธะน ัะธะบะป ัะพัะผะธัะพะฒะฐะฝะธั ะฝะพะฒัั ัะตะปะธะทะพะฒ. ะะพะฒะฐั ััะฝะบัะธะพะฝะฐะปัะฝะพััั ัะตะฟะตัั ัะฐะทะฒะธะฒะฐะตััั ะฒ ะพะดะฝะพะน ะฟะพััะพัะฝะฝะพ ะพะฑะฝะพะฒะปัะตะผะพะน master-ะฒะตัะบะต, ะฒ ะบะพัะพััั ะฒะบะปััะฐัััั ัะถะต ะณะพัะพะฒัะต ะธะทะผะตะฝะตะฝะธั ะธ ะพั ะบะพัะพัะพะน ัะฐะท ะฒ ัะตััั ะผะตัััะตะฒ ะพัะฒะตัะฒะปััััั ะฒะตัะบะธ ะดะปั ััะฐะฑะธะปะธะทะฐัะธะธ ะฝะพะฒัั ะฒัะฟััะบะพะฒ.
เบเบธเบเบเบฐเบชเบปเบกเบเบฑเบเปเบซเบกเปเปเบ Java 19 เบเบฐเบเบญเบเบกเบต:
- ะัะตะดะปะพะถะตะฝะฐ ะฟัะตะดะฒะฐัะธัะตะปัะฝะฐั ะฟะพะดะดะตัะถะบะฐ ัะฐะฑะปะพะฝะพะฒ ะทะฐะฟะธัะตะน (record pattern), ัะฐััะธััััะฐั ะฟะพัะฒะธะฒััััั ะฒ Java 16 ะฒะพะทะผะพะถะฝะพััั ัะพะฟะพััะฐะฒะปะตะฝะธั ั ะพะฑัะฐะทัะพะผ ััะตะดััะฒะฐะผะธ ะดะปั ัะฐะทะฑะพัะฐ ะทะฝะฐัะตะฝะธะน ะบะปะฐััะพะฒ ัะธะฟะฐ record. ะะฐะฟัะธะผะตั: 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.
- ะะพะฑะฐะฒะปะตะฝะฐ ะฟัะตะดะฒะฐัะธัะตะปัะฝะฐั ะฟะพะดะดะตัะถะบะฐ API FFM (Foreign Function & Memory), ะฟะพะทะฒะพะปัััะตะณะพ ะพัะณะฐะฝะธะทะพะฒะฐัั ะฒะทะฐะธะผะพะดะตะนััะฒะธะต Java-ะฟัะพะณัะฐะผะผ ั ะฒะฝะตัะฝะธะผะธ ะบะพะดะพะผ ะธ ะดะฐะฝะฝัะผะธ ัะตัะตะท ะฒัะทะพะฒ ััะฝะบัะธะน ะธะท ะฒะฝะตัะฝะธั ะฑะธะฑะปะธะพัะตะบ ะธ ะดะพัััะฟ ะบ ะฟะฐะผััะธ ะฒะฝะต JVM.
- ะะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตัะถะบะฐ ะฒะธัััะฐะปัะฝัั ะฟะพัะพะบะพะฒ, ะฟัะตะดััะฐะฒะปัััะธั ัะพะฑะพะน ะปะตะณะบะพะฒะตัะฝัะต ะฟะพัะพะบะธ, ะทะฝะฐัะธัะตะปัะฝะพ ัะฟัะพัะฐััะธะต ะฝะฐะฟะธัะฐะฝะธะต ะธ ัะพะฟัะพะฒะพะถะดะตะฝะธะต ะฒััะพะบะพะฟัะพะธะทะฒะพะดะธัะตะปัะฝัั ะผะฝะพะณะพะฟะพัะพัะฝัั ะฟัะธะปะพะถะตะฝะธะน.
- ะัะตะดะปะพะถะตะฝะฐ ัะตัะฒัััะฐั ะฟัะตะดะฒะฐัะธัะตะปัะฝะฐั ัะตะฐะปะธะทะฐัะธั API Vector, ะฟัะตะดะพััะฐะฒะปัััะตะณะพ ััะฝะบัะธะธ ะดะปั ะฒะตะบัะพัะฝัั ะฒััะธัะปะตะฝะธะน, ะบะพัะพััะต ะฒัะฟะพะปะฝััััั ั ะธัะฟะพะปัะทะพะฒะฐะฝะธะตะผ ะฒะตะบัะพัะฝัั ะธะฝััััะบัะธะน ะฟัะพัะตััะพัะพะฒ x86_64 ะธ AArch64 ะธ ะฟะพะทะฒะพะปััั ะพะดะฝะพะฒัะตะผะตะฝะฝะพ ะฟัะธะผะตะฝะธัั ะพะฟะตัะฐัะธะธ ััะฐะทั ะบ ะฝะตัะบะพะปัะบะธะผ ะทะฝะฐัะตะฝะธัะผ (SIMD). ะ ะพัะปะธัะธะต ะพั ะฟัะตะดะพััะฐะฒะปัะตะผัั ะฒ JIT-ะบะพะผะฟะธะปััะพัะต HotSpot ะฒะพะทะผะพะถะฝะพััะตะน ะฟะพ ะฐะฒัะพะฒะตะบัะพัะธะทะฐัะธะธ ัะบะฐะปััะฝัั ะพะฟะตัะฐัะธะน, ะฝะพะฒัะน API ะดะฐัั ะฒะพะทะผะพะถะฝะพััั ัะฒะฝะพ ัะฟัะฐะฒะปััั ะฒะตะบัะพัะธะทะฐัะธะตะน ะดะปั ะฟะฐัะฐะปะปะตะปัะฝะพะน ะพะฑัะฐะฑะพัะบะธ ะดะฐะฝะฝัั .
- ะะพะฑะฐะฒะปะตะฝะฐ ััะตััั ัะบัะฟะตัะธะผะตะฝัะฐะปัะฝะฐั ัะตะฐะปะธะทะฐัะธั ัะพะฟะพััะฐะฒะปะตะฝะธั ะฟะพ ัะฐะฑะปะพะฝั ะฒ ะฒััะฐะถะตะฝะธัั ยซswitchยป, ะฟะพะทะฒะพะปัััะฐั ะฒ ะผะตัะบะฐั ยซcaseยป ะธัะฟะพะปัะทะพะฒะฐัั ะฝะต ัะพัะฝัะต ะทะฝะฐัะตะฝะธั, ะฐ ะณะธะฑะบะธะต ัะฐะฑะปะพะฝั, ะพั ะฒะฐััะฒะฐััะธะต ััะฐะทั ัะตัะธั ะทะฝะฐัะตะฝะธะน, ะดะปั ะบะพัะพััั ัะฐะฝะตะต ะฟัะธั ะพะดะธะปะพัั ะธัะฟะพะปัะทะพะฒะฐัั ะณัะพะผะพะทะดะบะธะต ัะตะฟะพัะบะธ ะฒััะฐะถะตะฝะธะน ยซifโฆelseยป. Object o = 123L; String formatted = 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(ยซString %sยป, s); default -> o.toString(); };
- ะะพะฑะฐะฒะปะตะฝ ัะบัะฟะตัะธะผะตะฝัะฐะปัะฝัะน API ะดะปั cัััะบัััะธัะพะฒะฐะฝะฝะพะณะพ ะฟะฐัะฐะปะปะตะปะธะทะผะฐ, ัะฟัะพัะฐััะธะน ัะฐะทัะฐะฑะพัะบั ะผะฝะพะณะพะฟะพัะพัะฝัั ะฟัะธะปะพะถะตะฝะธะน ะทะฐ ัััั ะพะฑัะฐะฑะพัะบะธ ะฝะตัะบะพะปัะบะธั ะทะฐะดะฐั, ะฒัะฟะพะปะฝัะตะผัั ะฒ ัะฐะทะฝัั ะฟะพัะพะบะฐั , ะบะฐะบ ะตะดะธะฝะพะณะพ ะฑะปะพะบะฐ.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru