logo

Java 8 v/s Java 11

Java 11 byla veřejně dostupná 25. září 2018 na trhu. Jedná se o open-source referenční implementaci platformy Java SE verze 11. Java 11 byla vydána po čtyřech letech od vydání Java 8.

Java 11 přichází s novými funkcemi, které poskytují více funkcí. Níže jsou uvedeny funkce, které byly přidány během čtyř a půl roku mezi těmito dvěma verzemi.

Java 8 v/s Java 11

Modularita

The Modularita Tato funkce není v Javě 8 dostupná. Je to jedna z největších změn, které byly přidány v Javě 9. Pomocí modularity můžeme naše programy nebo aplikace rozdělit do různých modulů. Modularita nám umožňuje snadno testovat naši aplikaci a také spravovat přístup k tomu, které části našeho kódu jsou veřejně přístupné. Náš kód můžeme zkompilovat bez kompilace souboru tak, že jej jednoduše vložíme do modulu bez názvu. Chová se stejně jako kompilační kód Java 8.

runas v powershell

--příznak uvolnění

Jedná se o velmi jednoduchou kombinaci -cílová a -zdroj to nám umožňuje -bootclasspath pro kompilaci ve starší verzi. The - vydání 8 je příklad, který potřebujeme zkompilovat na úrovni Java 8.

Uvolnění s více nádobami

Je to jedna z funkcí, která je přidána do Java 11. Multi-jar poskytuje způsob, jak zachovat kód s nejnovějšími funkcemi Java 11 při zachování podpory a funkčnosti pro klienty Java 8.

Klíčové slovo Var

V Javě 10, klíčové slovo var bylo představeno, které bylo vylepšeno v Javě 11. Klíčové slovo var je klíčové slovo vhodné pro vývojáře, které nám pomáhá redukovat standardní kódování. Typ infekce zabraňuje opakování stejného textu znovu a znovu tím, že ovlivňuje pouze lokální proměnné.

Schéma řetězce verze

Je to další změna mezi Java 8 a Java 11, která definuje, jak by měly být formátovány řetězce verzí. Pro verze se zavádí nové schéma. Schéma vypadá asi takto:

 .. 

Pojďme pochopit rozdíl mezi oběma verzemi Javy na základě zastaralých verzí. Toto jsou následující ukončení podpory, která se provádějí mezi Java 8 a Java 11.

  1. V Javě 11 je odstraněna podpora zásuvných modulů prohlížeče Java a kvůli tomu bylo rozhraní Applet API zastaralé.
    Poznámka: je pouze odepisovaná, dosud neodstraněna.
  2. CMS, tedy Concurrent Mark Sweep Garbage Collector, je odepsán a není nyní podporován. Důvodem jeho odstranění je snížení zátěže údržby základny GCC.
  3. S rychlými změnami ECMAScript API bylo odstraněno kvůli množství údržby Nashorn JavaScript engine.
  4. V Javě 9 je schéma komprese vylepšeno a po tomto vylepšení byly odstraněny nástroje a API Pack200.
  5. Modul Java EE byl odstraněn z důvodu překrývání se specifikací platformy Java EE.
  6. Modul CORBA byl odstraněn kvůli vývoji nezávisle na Java SE.

Rozdíl mezi Java 8 a Java 11

Toto jsou následující rozdíly mezi Java 8 a Java 11:

pan č. Java 8 Java 11
1. Nástroj appletviewer je dostupný v Javě 8. Nástroj appletviewer není v Javě 11 k dispozici.
2. Java 8 má třídu AWTUtilities, kterou jsme vám nedoporučovali používat, protože může rozbít jakýkoli program v závislosti na ní. V Java 11 není třída AWTUtilities dostupná.
3. Má méně řetězcových metod. Zavádí se několik nových metod String, jako je isBlank(), lines(),repeat(n), stripLeading(), stripTrailing() a strip().
4. Pro parametry lambda se nepoužívají žádné speciální proměnné. Java 11 nám umožňuje používat proměnné var pro použití ve výrazech lambda.
5. Technologie Java Deployment Technologies jsou dostupné v Javě 8. Technologie Java Deployment Technologies jsou z Java 11 odstraněny.
6. JMC a JavaFX jsou k dispozici v Oracle JDK. JMC a JavaFX jsou odstraněny z Oracle JDK v Javě 11.
7. Neexistují žádné vhodné metody pro práci se souborem. V Javě 11 existují různé metody, jako například writeString(), readString() a isSameFile(), které nám pomáhají provádět několik operací se souborem.
8. Rozpoznání vzoru není možné. Rozpoznávání vzorů je možné pomocí metody asMatchPredicate().