Java SE 13 vrystelling

Na ses maande van ontwikkeling, Oracle vrygelaat platform JavaSE 13 (Java Platform, Standard Edition 13), wat die open source OpenJDK-projek as 'n verwysingsimplementering gebruik. Java SE 13 handhaaf terugwaartse versoenbaarheid met vorige vrystellings van die Java-platform, en alle voorheen geskrewe Java-projekte sal sonder veranderings werk wanneer dit onder die nuwe weergawe bekendgestel word. Gereed om Java SE 13-bou te installeer (JDK, JRE en Server JRE) voorberei vir Linux (x86_64), Solaris, Windows en macOS. Verwysingsimplementering ontwikkel deur die OpenJDK-projek Java 13 volledig oopbron onder die GPLv2-lisensie met GNU ClassPath-uitsonderings wat dinamiese koppeling met kommersiΓ«le produkte moontlik maak.

Java SE 13 word gekategoriseer as 'n gereelde ondersteuningsvrystelling, met opdaterings wat voor die volgende vrystelling vrygestel moet word. Die langtermynondersteuningstak (LTS) behoort Java SE 11 te wees, wat opdaterings tot 2026 sal ontvang. Die vorige Java 8 LTS-tak sal tot Desember 2020 ondersteun word. Die volgende LTS-vrystelling is geskeduleer vir September 2021. Onthou dat die projek begin met die vrystelling van Java 10 oorgeskakel het na 'n nuwe ontwikkelingsproses, wat 'n korter siklus vir die vorming van nuwe vrystellings impliseer. Nuwe funksionaliteit word nou ontwikkel in een voortdurend bygewerkte meestertak, wat reeds voltooide veranderinge insluit en waaruit takke elke ses maande vertak word om nuwe vrystellings te stabiliseer. Java 14 is geskeduleer om volgende Maart vrygestel te word, met voor-vrystelling bouwerk reeds beskikbaar vir toetsing.

Van innovasies Java 13 kan 'n mens merk:

  • Bygevoeg ondersteuning vir dinamiese byvoeging van CDS (Class-Data Sharing) argiewe wat gedeelde toepassingstoegang tot algemene klasse bied. Met CDS kan algemene klasse in 'n aparte, gedeelde argief geplaas word, sodat toepassings vinniger kan begin en bokoste verminder. Die nuwe weergawe voeg gereedskap by vir dinamiese argivering van klasse na die einde van die toepassingsuitvoering. Geargiveerde klasse sluit alle klasse in wat tydens programbedryf gelaai is en verwante biblioteke wat nie in die aanvanklik verskafde basis-CDS-argief was nie;
  • Aan die ZGC vullisverwyderaar (Z Vullisverwyderaar) bygevoeg ondersteuning vir die terugkeer van ongebruikte geheue na die bedryfstelsel;
  • Betrokke 'n herontwerpte implementering van die Legacy Socket API (java.net.Socket en java.net.ServerSocket) wat makliker is om te onderhou en te ontfout. Daarbenewens sal die voorgestelde implementering makliker wees om aan te pas om te werk met die nuwe stelsel van gebruikersruimte-drade (vesels) wat binne die Loom-projek ontwikkel is;
  • Vervolg ontwikkeling van 'n nuwe vorm van uitdrukkings "skakel". Bygevoeg eksperimentele (Voorskou) vermoΓ« om "skakelaar" te gebruik in die vorm van nie net 'n operateur nie, maar ook as 'n uitdrukking. Byvoorbeeld, nou kan jy konstruksies van die vorm gebruik:

    int getal Letters = skakelaar (dag) {
    geval MAANDAG, VRYDAG, SONDAG -> 6;
    saak DINSDAG -> 7;
    geval DONDERDAG, SATERDAG -> 8;
    geval WOENSDAG -> 9;
    };

    of

    System.out.println(
    skakelaar (k) {
    geval 1 -> "een"
    geval 2 -> "twee"
    verstek -> "baie"
    }
    );

    In die toekoms, gebaseer op hierdie geleentheid beplan word implementeer ondersteuning vir patroonpassing;

  • Bygevoeg eksperimentele ondersteuning vir teksblokke, 'n nuwe vorm van letterlike stringe wat jou toelaat om multi-reΓ«l teksdata in die bronkode in te sluit sonder om karakter ontsnap in hulle te gebruik en die oorspronklike teksformatering in die blok te behou. Die blok is omraam met drie dubbele aanhalingstekens. Byvoorbeeld, in plaas van die uitdrukking

    Stringnavraag = "KIES `EMP_ID`, `LAST_NAME` VAN `EMPLOYEE_TB`\n" +
    "WHERE `CITY` = 'INDIANAPOLIS'\n" +
    "ORDEL VIR `EMP_ID`, `LAATNAAM`;\n";

    Nou kan jy die konstruksie toepas:

    Stringnavraag = """
    KIES `EMP_ID`, `LAST_NAME` VAN `EMPLOYEE_TB`
    WAAR 'STAD' = 'INDIANAPOLIS'
    BESTEL DEUR `EMP_ID`, `LAST_NAME`;
    """;

  • 2126 foutverslae is gesluit, waarvan 1454 deur Oracle-werknemers opgelos is, en 671 deur derde partye, waarvan 'n sesde van die veranderinge deur onafhanklike ontwikkelaars aangebring is, en die res deur verteenwoordigers van maatskappye soos IBM, Red Hat, Google, Loongson, Huawei, ARM en SAP.

Java SE 13 vrystelling

Bron: opennet.ru

Voeg 'n opmerking