logo

Java 8 v/s Java 11

Java 11 var offentligt tilgængelig den 25. september 2018 på markedet. Det er en open source-referenceimplementering af Java SE-platformen version 11. Java 11 blev udgivet efter fire års udgivelse af Java 8.

Java 11 kommer med nye funktioner for at give mere funktionalitet. Nedenfor er de funktioner, der er tilføjet i de fire et halvt år mellem disse to versioner.

Java 8 v/s Java 11

Modularitet

Det Modularitet funktion er ikke tilgængelig i Java 8. Det er en af ​​de største ændringer, der er blevet tilføjet i Java 9. Ved at bruge modularitet kan vi opdele vores programmer eller applikationer i forskellige moduler. Modularitet giver os mulighed for nemt at teste vores applikation og også administrere adgang til, hvilke dele af vores kode, der er offentligt vendt. Vi kan kompilere vores kode uden at kompilere filen ved blot at placere den i modulet uden navn. Den opfører sig på samme måde som Java 8-kompileringskoden.

--slip flag

Det er en meget simpel kombination af -mål og -kilde der tillader os -bootclasspath til kompilering i den ældre version. Det -udgivelse 8 er et eksempel, som vi skal kompilere på et Java 8-niveau.

Multi-jar udgivelser

Det er en af ​​funktionerne, der er tilføjet i Java 11. Multi-krukke giver en måde at stille koden på med de nyeste funktioner i Java 11, mens understøttelse og funktionalitet for Java 8-klienter bevares.

Var søgeord

I Java 10 er var søgeord blev introduceret, hvilket blev forbedret i Java 11. Var nøgleordet er et udviklervenligt søgeord, der hjælper os med at reducere kedelkodningen. Infektionstypen forhindrer gentagelse af den samme tekst igen og igen ved kun at påvirke lokale variabler.

Versionsstrengskema

Det er endnu en ændring mellem Java 8 og Java 11, som definerer, hvordan versionsstrengene skal formateres. Et nyt skema introduceres for versionerne. Skemaet ser nogenlunde sådan ud:

 .. 

Lad os forstå forskellen mellem begge versioner af Java på grundlag af afskrivninger. Dette er de følgende udfasninger, som udføres mellem Java 8 og Java 11.

  1. I Java 11 er understøttelsen af ​​Java browser plugins fjernet, og på grund af dette er Applet API blevet forældet.
    Bemærk: den er kun afskrevet, endnu ikke fjernet.
  2. CMS, dvs. Concurrent Mark Sweep Garbage Collector, er afskrevet og understøttes ikke nu. Årsagen til at fjerne den er at reducere vedligeholdelsesbyrden for GCC-basen.
  3. Med de hurtige ændringer af ECMAScript API er den blevet fjernet på grund af mængden af ​​vedligeholdelse af Nashorn JavaScript-motoren.
  4. I Java 9 er komprimeringsskemaet forbedret, og efter denne forbedring er Pack200-værktøjerne og API'erne blevet fjernet.
  5. Java EE-modulet er blevet fjernet på grund af overlapning med Java EE-platformspecifikationen.
  6. CORBA-modulet er blevet fjernet på grund af udvikling uafhængigt af Java SE.

Forskellen mellem Java 8 og Java 11

Disse er følgende forskelle mellem Java 8 og Java 11:

Mr. Nej. Java 8 Java 11
1. Appletviewer-værktøjet er tilgængeligt i Java 8. Appletviewer-værktøjet er ikke tilgængeligt i Java 11.
2. Java 8 har AWTUtilities-klassen, som vi ikke anbefalede dig at bruge, fordi den kan bryde ethvert program afhængigt af det. I Java 11 er AWTUtilities-klassen ikke tilgængelig.
3. Den har færre strengmetoder. Adskillige nye metoder til String, såsom isBlank(), lines(),repeat(n), stripLeading(), stripTrailing() og strip() introduceres.
4. Der bruges ingen specielle variabler til lambda-parametre. Java 11 giver os mulighed for at bruge var-variabler, der skal bruges i lambda-udtryk.
5. Java-implementeringsteknologier er tilgængelige i Java 8. Java Deployment Technologies er fjernet i Java 11.
6. JMC og JavaFX er tilgængelige i Oracle JDK. JMC og JavaFX fjernes fra Oracle JDK i Java 11.
7. Der er ingen egnede metoder til at arbejde med filen. I Java 11 er der forskellige metoder, såsom writeString(), readString() og isSameFile(), som hjælper os med at udføre flere handlinger på filen.
8. Mønstergenkendelse er ikke mulig. Mønstergenkendelse er mulig ved hjælp af asMatchPredicate() metoden.