Versiunea Java SE 13

După șase luni de dezvoltare, Oracle a lansat platformă JavaSE 13 (Java Platform, Standard Edition 13), proiectul open-source OpenJDK este folosit ca implementare de referință. Java SE 13 menține compatibilitatea cu versiunile anterioare ale platformei Java; toate proiectele Java scrise anterior vor funcționa fără modificări atunci când sunt lansate sub noua versiune. Build-uri Java SE 13 gata de instalat (JDK, JRE și Server JRE) pregătit pentru Linux (x86_64), Solaris, Windows și macOS. Implementarea de referință dezvoltată de proiectul OpenJDK Java 13 este complet open source sub licența GPLv2, cu excepții GNU ClassPath care permit conectarea dinamică cu produse comerciale.

Java SE 13 este clasificat ca o versiune de asistență generală și va continua să primească actualizări până la următoarea ediție. Suportul pe termen lung (LTS) ar trebui să fie Java SE 11, care va continua să primească actualizări până în 2026. Ramura LTS anterioară a Java 8 va fi acceptată până în decembrie 2020. Următoarea lansare LTS este programată pentru septembrie 2021. Să vă reamintim că începând cu lansarea Java 10, proiectul a trecut la un nou proces de dezvoltare, implicând un ciclu mai scurt pentru formarea de noi versiuni. Noua funcționalitate este acum dezvoltată într-o ramură principală actualizată constant, care include modificări gata făcute și din care ramurile sunt ramificate la fiecare șase luni pentru a stabiliza noile versiuni. Java 14 este programată pentru lansare în martie anul viitor, având deja versiuni de previzualizare disponibil pentru testare.

De inovații Java 13 Se poate marca:

  • Adăugat suport pentru adăugarea dinamică a arhivelor CDS (Class-Data Sharing), oferind acces la aplicații partajate la clasele comune. Cu CDS, clasele comune pot fi plasate într-o arhivă separată, partajată, permițând aplicațiilor să se lanseze mai rapid și să reducă cheltuielile generale. Noua versiune adaugă instrumente pentru arhivarea dinamică a claselor după încheierea execuției aplicației. Clasele arhivate includ toate clasele și bibliotecile însoțitoare încărcate în timpul funcționării programului care nu se aflau în arhiva CDS de bază furnizată inițial;
  • Către ZGC (Z Garbage Collector) adăugat suport pentru returnarea memoriei neutilizate la sistemul de operare;
  • Implicat o implementare reproiectată a API-ului Legacy Socket (java.net.Socket și java.net.ServerSocket) care este mai ușor de întreținut și de depanat. În plus, implementarea propusă va fi mai ușor de adaptat pentru a funcționa cu noul sistem de fire în spațiul utilizatorului (fibre), dezvoltat în cadrul proiectului Loom;
  • A continuat dezvoltarea unei noi forme de expresii „switch”. S-a adăugat capacitatea experimentală (previzualizare) de a utiliza „comutator” nu numai sub forma unui operator, ci și ca expresie. De exemplu, acum puteți utiliza constructe precum:

    int numLetters = comutare (zi) {
    cazul LUNI, VINERI, DUMINICĂ -> 6;
    cazul MARTI -> 7;
    cazul JOI, SAMBATA -> 8;
    cazul MIERCURI -> 9;
    };

    sau

    System.out.println(
    comutator (k) {
    cazul 1 -> „unu”
    cazul 2 -> "două"
    implicit -> „multe”
    }
    );

    În viitor, pe baza acestei caracteristici este planificat implementați suport pentru potrivirea modelelor;

  • Adăugat suport experimental pentru blocuri de text - o nouă formă de literale șir care vă permite să includeți date text cu mai multe linii în codul sursă fără a utiliza evadarea caracterelor și păstrând formatarea originală a textului din bloc. Blocul este încadrat de trei ghilimele duble. De exemplu, în locul expresiei

    Interogare șir = „SELECT `EMP_ID`, `LAST_NAME` FROM `EMPLOYEE_TB`\n” +
    „UNDE `ORAS` = 'INDIANAPOLIS'\n” +
    „COMANDA PENTRU `EMP_ID`, `LAST_NAME`;\n”;

    Acum puteți folosi construcția:

    Interogare șir = """
    SELECTAȚI `EMP_ID`, `LAST_NAME` DIN `EMPLOYEE_TB`
    WHERE `CITY` = 'INDIANAPOLIS'
    COMANDA PENTRU `EMP_ID`, `LAST_NAME`;
    """;

  • Au fost închise 2126 de rapoarte de erori, dintre care 1454 au fost rezolvate de angajații Oracle, iar 671 de către terți, dintre care o șase din modificări au fost făcute de dezvoltatori independenți, iar restul de reprezentanți ai unor companii precum IBM, Red Hat, Google , Loongson, Huawei, ARM și SAP.

Versiunea Java SE 13

Sursa: opennet.ru

Adauga un comentariu