PĂ€rast kuut kuud arendust esitles Oracle platvormi (Java Platform, Standard Edition 13), mille ehtlane teostus on avatud projekt OpenJDK. Java SE 13 sĂ€ilitab ĂŒhilduvuse varasemate Java platvormi vĂ€ljaannetega, kĂ”ik varasemad Java projektid töötavad probleemideta uue versiooniga. Valmis installimiseks Java SE 13 kogumikud (JDK, JRE ja Server JRE) Linuxile (x86_64), Solaris, Windows ja macOS. Ehtne teostus, mis on vĂ€lja töötatud OpenJDK projekti raames on tĂ€ielikult avatud GPLv2 litsentsiga, millel on GNU ClassPath'i erandid, mis lubavad dĂŒnaamilist sidumist kommertstooteid.
Java SE 13 kuulub tavalise toetuse perioodi alla, mille uuendusi antakse vĂ€lja jĂ€rgmise versiooni vĂ€ljalaskmiseni. Pikaajalise toetuse haruna (LTS) on soovitatav kasutada Java SE 11, mille uuendusi antakse vĂ€lja kuni 2026. aastani. Eelmise LTS haru, Java 8, toetatakse kuni 2020. aasta detsembrini. JĂ€rgmine LTS vĂ€ljaanne on planeeritud 2021. aasta septembriks. Tuletame meelde, et alates Java 10 vĂ€ljaandest on projekt lĂ€inud ĂŒle uuele arendusprotsessile, mis tĂ€hendab lĂŒhemaid uute versioonide vĂ€ljalasketsĂŒkleid. Uus funktsionaalsus areneb nĂŒĂŒd ĂŒhes pidevalt uuendatud master-harus, kuhu lisatakse juba valmis muutused ja millest eraldatakse uute versioonide stabiliseerimise harud iga kuue kuu tagant. Java 14 vĂ€ljalaskmine on planeeritud jĂ€rgmise aasta mĂ€rtsiks, mille eelversioonid on juba testimiseks.
Kuna :
- dĂŒnaamilise arhiivide CDS (Class-Data Sharing) tugi, mis tagab rakenduste juurdepÀÀsu ĂŒhistele klassidele. CDS abil saavad ĂŒhised klassid asuda eraldi jagatavas arhiivis, mis kiirendab rakenduste kĂ€ivitamist ja vĂ€hendab ĂŒldkulusid. Uues versioonis on lisatud tööriistad klasside dĂŒnaamiliseks arhiveerimiseks pĂ€rast rakenduse töö lĂ”petamist. Arhiivi paigutatud klassid sisaldavad kĂ”iki klasside ja seotud raamatukogusid, mis laaditi programmi töö kĂ€igus ja mis puudusid algselt antud baas CDS arhiivist;
- prĂŒgikogur ZGC (Z Garbage Collector) toetab kasutamata mĂ€lu tagastamist operatsioonisĂŒsteemile;
- uuendatud API Legacy Socketi (java.net.Socket ja java.net.ServerSocket) teostus, mis on lihtsam hooldada ja tĂ”rkeotsida. Lisaks on pakutud teostust lihtsam kohandada uue kasutaja-ruumi (fibers) voosĂŒsteemiga, mida arendatakse projekti Loom raames.
- uue vĂ€ljendusvormi «switch» areng. Lisatud eksperimentaalne (Preview) vĂ”imalus kasutada «switch» mitte ainult operaatorina, vaid ka vĂ€ljendusena. NĂ€iteks on nĂŒĂŒd vĂ”imalik kasutada selliseid konstruktsioone:
int numLetters = switch (day) {
case MONDAY, FRIDAY, SUNDAY -> 6;
case TUESDAY -> 7;
case THURSDAY, SATURDAY -> 8;
case WEDNESDAY -> 9;
};vÔi
System.out.println(
switch (k) {
case 1 -> «one»
case 2 -> «two»
default -> «many»
}
);Tulevikus, pÔhinedes sellele vÔimalusele rakendada mustrite leidmise tuge;
- eksperimentaalne toetus tekstiblokkidele â uus stringide kirjeldamise vorm, mis lubab hĂ”lmata lĂ€htekoodi mitmerealisi tekstilisi andmeid ilma sĂŒmbolite escapedimise ja sĂ€ilitades algse vorminduse. Bloki piiritlemine toimub kolme topelt-tsitaadiga. NĂ€iteks, selle asemel, et kasutada vĂ€ljendit
String query = «SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n» +
«WHERE `CITY` = âINDIANAPOLISâ\n» +
«ORDER BY `EMP_ID`, `LAST_NAME`;\n»;nĂŒĂŒd on vĂ”imalik rakendada konstruktsiooni:
String query = «»»
SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`
WHERE `CITY` = âINDIANAPOLISâ
ORDER BY `EMP_ID`, `LAST_NAME`;
«»»; - 2126 veateadet on suletud, millest 1454 on kĂ”rvaldanud Oracle'i töötajad, 671 aga kolmandad osalised, kellest kuues osa muudatustest on teinud sĂ”ltumatud arendajad, ĂŒlejÀÀnud aga ettevĂ”tted nagu IBM, Red Hat, Google, Loongson, Huawei, ARM ja SAP.
Allikas: opennet.ru
