A Java 11 2018. szeptember 25-én volt nyilvánosan elérhető a piacon. Ez a Java SE platform 11-es verziójának nyílt forráskódú referencia-megvalósítása. A Java 11 a Java 8 megjelenése után négy év után jelent meg.
A Java 11 új funkciókkal rendelkezik, amelyek több funkciót biztosítanak. Az alábbiakban felsoroljuk azokat a funkciókat, amelyek a két verzió között eltelt négy és fél év alatt bővültek.
Modularitás
A Modularitás A szolgáltatás a Java 8-ban nem érhető el. Ez az egyik legnagyobb változtatás, ami a Java 9-ben történt. A modularitás használatával programjainkat vagy alkalmazásainkat különböző modulokra oszthatjuk. A modularitás lehetővé teszi, hogy egyszerűen teszteljük az alkalmazásunkat, és kezeljük a hozzáférést a kódunk mely részeihez, amelyek nyilvánosak. A kódunkat a fájl lefordítása nélkül is lefordíthatjuk, ha egyszerűen behelyezzük a név nélküli modulba. Ugyanúgy viselkedik, mint a Java 8 fordítási kódja.
--release flag
Ez egy nagyon egyszerű kombinációja -cél és -forrás ami lehetővé teszi számunkra -bootclasspath a régebbi verzióhoz való fordításhoz. A - 8-as kiadás példa, amelyet Java 8 szinten kell fordítanunk.
Multi-jar kiadások
Ez az egyik olyan szolgáltatás, amelyet a Java 11 hozzáadott. Több tégelyes módot ad arra, hogy a kódot a Java 11 legújabb funkcióival rögzítse, miközben fenntartja a Java 8 kliensek támogatását és funkcionalitását.
Var kulcsszó
A Java 10-ben a var kulcsszó A var kulcsszó egy fejlesztőbarát kulcsszó, amely segít csökkenteni a kazánkódolást. A fertőzés típusa megakadályozza, hogy ugyanazt a szöveget ismételje meg újra és újra, mivel csak a helyi változókat érinti.
Verzió Karakterlánc-séma
Ez egy másik változás a Java 8 és a Java 11 között, amely meghatározza, hogy a verziókarakterláncokat hogyan kell formázni. A verziókhoz új séma vezet be. A séma valahogy így néz ki:
..
Értsük meg a Java két verziója közötti különbséget az elavulások alapján. Ezek a következő megszüntetések, amelyek a Java 8 és a Java 11 között történtek.
- A Java 11-ben a Java böngészőbővítmények támogatása megszűnt, és emiatt az Applet API elavult.
Jegyzet: csak amortizálva van, még nem távolították el. - A CMS, azaz a Concurrent Mark Sweep Garbage Collector amortizálódott, és jelenleg nem támogatott. Az eltávolítás oka a GCC-bázis karbantartási terheinek csökkentése.
- Az ECMAScript API gyors változásai miatt a Nashorn JavaScript motor karbantartási igénye miatt eltávolították.
- A Java 9-ben a tömörítési sémát továbbfejlesztették, és a fejlesztés után a Pack200 eszközöket és API-kat eltávolították.
- A Java EE modult eltávolítottuk a Java EE platform specifikációjával való átfedés miatt.
- A CORBA modult eltávolítottuk, mert a Java SE-től függetlenül fejlődött.
A Java 8 és a Java 11 közötti különbség
Ezek a következő különbségek a Java 8 és a Java 11 között:
Mr. Nem. | Java 8 | Java 11 |
---|---|---|
1. | Az appletviewer eszköz Java 8-ban érhető el. | Az appletviewer eszköz nem érhető el a Java 11-ben. |
2. | A Java 8-ban van az AWTUtilities osztály, aminek használatát nem javasoltuk, mert attól függően bármilyen programot eltörhet. | Java 11-ben az AWTUtilities osztály nem érhető el. |
3. | Kevesebb string metódusa van. | Számos új String metódus került bevezetésre, mint például az isBlank(), lines(),repeat(n), stripLeading(), stripTrailing() és strip(). |
4. | A lambda paraméterekhez nem használnak speciális változókat. | A Java 11 lehetővé teszi, hogy a lambda-kifejezésekben változókat használjunk. |
5. | A Java Deployment Technologies a Java 8-ban érhető el. | A Java Deployment Technologies eltávolításra került a Java 11-ben. |
6. | A JMC és a JavaFX elérhető az Oracle JDK-ban. | A JMC és a JavaFX eltávolításra került az Oracle JDK-ból a Java 11-ben. |
7. | Nincsenek megfelelő módszerek a fájl kezeléséhez. | A Java 11-ben különféle metódusok léteznek, mint például a writeString(), a readString() és az isSameFile(), amelyek segítségével számos műveletet hajthatunk végre a fájlon. |
8. | A minta felismerése nem lehetséges. | A mintafelismerés az asMatchPredicate() metódus segítségével lehetséges. |