JDK 10 10 nya funktioner och förbättringar i Java 10
Oracle levererade sitt nya engagemang Java 10 i tid. Kommande av det, dvs., JDK 10, en implementering av Java Standard Edition 10 var väl mottagen. Varför? En hel del verktygs- och ramtillverkare var inte skickliga med Java 9 och var fortfarande upptagna att anpassa sig till det nya modulsystemet. Som sådan hjälpte förändringen i ordning av saker att användarna snabbt klarar av uppgiften.
Nya funktioner i Java 10
Så vad är nytt i Java 10? För det första har stor uppmärksamhet riktats in på de senaste funktionerna i Java, inklusive introduktionen av-
- Lokal variabel typ inferens - Funktionen syftar till att förbättra Java-språket för att utöka typinferens till deklarationer av lokala variabler med initialisatorer. Det påstås vara den enda riktiga funktionen för utvecklare i JDK 10.
- Tillhandahållande av en standard uppsättning certifikats certifikat certifikat i JDK -Det huvudsakliga målet bakom detta är att öppna källcertifikat i Oracles Java SE Root CA-program för att göra OpenJDK byggnader mer tilltalande för utvecklare. Dessutom, som beskrivningen läser, kommer det fördelaktiga tillägget att tillhandahålla en standarduppsättning av certifikatutfärdningscertifikat (CA) i JDK.
- Applikationsklass-datadeling för att optimera starttid och fotavtryck - CDS (klassdatautbyte) introducerades först i JDK 5 för att förbättra prestanda för JVM-start och minska resursfotavtrycket när flera JVM körde på samma fysiska maskin. JDK 10 kommer att förlänga CDS-funktionaliteten så att applikationsklasser också kan placeras i det delade arkivet. Tidigare hade användningen av CDS varit begränsad till endast bootstrap klassläsaren.
- Dockers medvetenhet - Börja nu, i vilket fall du valde att köra Java 10 på Linux-system, kommer Java Virtual Machine (JVM) snabbt att känna igen om det körs i en Docker-behållare. Containerspecifik information som antalet CPUer och totalt minne som allokeras till behållaren kommer att extraheras av JVM istället för att det frågar operativsystemet.
- Ytterligare JVM-alternativ - De nya alternativen kommer att erbjuda Docker Container-användare större kontroll över systemminne.
- Bug fixar - En buggfix för att korrigera bifogningsmekanismen när du försöker fästa från en värdprocess till en Java-process som finns i en Docker-behållare.
- Nya API: er - Java 10 kommer att innehålla nya API för att bättre möjliggöra skapandet av oföränderliga samlingar. Metoden CopyOf, Set.copyOf och Map.copyOf skapar nya samlingsinstanser från befintliga instanser. Nya metoder för UnmodifiableList, UnmodifiableSet och UnmodifiableMap läggs till kollektörsklassen i Stream-paketet, så att elementen i en Stream kan samlas in i en omodifierbar samling.
- Garbage Collector Interface: I tidigare JDK-strukturen spridda komponenterna som utgjorde en Garbage Collector-implementering (GC) i olika delar av kodbasen. Medan de visade sig kända för de som är bekanta med GC-systemet som används av JDK, resulterade det ofta i förvirring för nyare utvecklare. Den har ändrats i Java 10. Nu är det ett rent gränssnitt inom JVM-källkoden för att möjliggöra att alternativa samlare snabbt och enkelt integreras. Det kommer att förbättra källkodsisolering av olika sophämtare.
- Sammanslagning av JDK-skogens arkiv i ett enda förråd - Kodbasen hittills bryts i flera repos, vilket kan orsaka problem med källkodshantering. Så, för att effektivisera utvecklingen, åtta repos:
- Rot
- Corba
- hotspot
- JAXP
- Jaxws
- JDK
- Langtools
- Nashorn
- Tidigare tillgängliga i JDK 9 slogs samman i ett enda förråd för att utföra en atomförbrytning över förvar av inter-beroende förändringar.
Grall Java-baserad just-in-time compiler
Slutligen, Graal som låter programmerare skapa runtime och kompilatorer för nya eller befintliga språk i Java har aktiverats som den Grall Java-baserade just-in-time compiler som används experimentellt på Linux / x64-plattformen.
Oracle lovar att det kommer att fortsätta att erbjuda långsiktiga utgåvor regelbundet och med jämna mellanrum. Mer information finns på den här sidan.