Post ses monatoj da disvolviĝo, Oracle anoncis la liberigon de la nova versio de JavaSE 15 kiel referenca efektivigo, kiu uzas malfermfontecan projekton OpenJDK.
JavaSE 15 ĝi estas klasifikita kiel regula subtena versio, kun ĝisdatigoj liberigotaj ĝis la sekva versio. Java SE 11 estu uzata kiel longtempa subtena kruro (LTS) kaj ĝisdatigoj estos publikigitaj ĝis 2026. La antaŭa branĉo de Java 8 LTS estos subtenata ĝis decembro 2020. La sekva eldono de LTS estas antaŭvidita por septembro 2021.
Ĉefaj novecoj de Java SE 15
En ĉi tiu nova versio, apoga funkcio por la subskribo EdDSA RFC 8032 estas prezentita, la proponita efektivigo de EdDSA ne dependas de aparataj platformoj, ĝi estas protektita kontraŭ atakoj de flankaj kanaloj (konstanta tempo de ĉiuj kalkuloj estas garantiita) kaj ĝi superas la ekzistantan efektivigon de ECDSA skribita en C laŭ rendimento, kun la sama nivelo de protekto.
Alia ŝanĝo estas la eksperimenta subteno por sigelitaj klasoj kaj interfacoj que ili ne povas esti uzataj de aliaj klasoj kaj interfacoj heredi, etendi aŭ nuligi.
Ankaŭ elstarigita en ĉi tiu nova versio de Java SE 15 estas la subteno por kaŝitaj klasoj, kiuj ne povas esti uzataj rekte per bitokodo de aliaj klasoj. La ŝlosila uzo de kaŝitaj klasoj estas por kadroj, kiuj dinamike generas klasojn dum rultempo kaj uzas ilin nerekte per pripensado.
La rubforigisto ZGC (Z Rubujo) estis stabiligita kaj rekonita kiel preta por ĝenerala uzo. ZGC funkcias en pasiva reĝimo por minimumigi latentecon pro rubkolekto kiel eble plej multe (malfunkcio dum uzado de ZGC ne superas 10 ms) kaj povas funkcii kun malgrandaj kaj grandaj amasoj, de grandeco de kelkcent de megabajtoj al multaj terabajtoj.
La rubforigisto Shenandoah stabiliĝis kaj rekonis kiel ĉiea. Shenandoah estas disvolvita de Red Hat kaj elstaras pro la uzo de algoritmo, kiu reduktas paŭzotempojn dum rubkolekto dum purigado paralele kun rulado de Java-aplikaĵoj.
Ankaŭ subteno por tekstoblokoj stabiliĝis kaj eniris en la lingvon: a nova formo de laŭvortaj kordoj Ili permesas al vi inkluzivi plurliniajn tekstajn datumojn en via fonta kodo sen uzi fuĝajn signojn kaj konservi la originalan tekstan formatadon en la bloko.
Aliflanke la Hereda DatagramSocket API estis prilaborita kiel la malnovaj efektivigoj java.net.DatagramSocket kaj java.net.MulticastSocket estis anstataŭigitaj per moderna efektivigo pli facile elpurigebla kaj prizorginda, kaj kongrua kun virtualaj fadenoj disvolvitaj de la projekto Loom.
Kaze de ebla kongrua malobservo kun ekzistanta kodo, la malnova efektivigo ne estis forigita kaj aktivebla per la opcio jdk.net.usePlainDatagramSocketImpl.
Ankaŭ, dua eksperimenta efektivigo de ŝablona kongruado estas proponita en la operatoro "instanceof", kiu permesas vin tuj difini lokan variablon por aliri la kontrolitan valoron.
Fine, dua eksperimenta efektivigo de la ŝlosilvorto «rekordo» ankaŭ estas reliefigita, kiu donas kompaktan formon por klasaj difinoj, evitante la bezonon eksplicite difini plurajn malaltnivelajn metodojn kiel equals (), hashCode () kaj toString (), en kazoj, kie la datumoj estas konservitaj nur en kampoj.
Fine aliaj elstaraj ŝanĝoj:
- Dua skizo de ekstera memora alira API estas proponita
- La Biased Locking-optimumiga tekniko uzata de la HotSpot JVM por redukti ŝlosan lumkapon estis malŝaltita kaj malaktuala.
- RMI-aktivigo de la deklarita malnoviĝinta mekanismo, kiu estos forigita en estonta eldono.
- Forigis la Nashorn-JavaScript-motoron, kiu estis kaduka en Java SE 11.
- Forigitaj havenoj por procesoroj Solaris OS kaj SPARC (Solaris / SPARC, Solaris / x64, kaj Linukso / SPARC).
Si vi volas scii pli pri ĝi pri ĉi tiu nova versio. Vi povas kontroli la detalojn En la sekva ligilo.
Estu la unua por komenti