Uvod u Javu 8

Kao što svi znamo, Java je jedan od najmoćnijih programskih jezika. Oracle je objavio novu verziju Java, Java SE 8, 18. ožujka 2014. Ovo inovativno izdanje Java uglavnom se koristi za razvoj softverske platforme. U Java8 postoji nekoliko značajki koje su ažuriranja postojeće verzije programskih biblioteka, JVM i Alata. Kaže se da je najvažnija značajka uvođenje lambda izraza o kojima ćemo razgovarati u sljedećem odjeljku, zajedno s ostalim značajkama.

Nove značajke Jave 8

Za programiranje Java, Java SE 8 nudi obilje mogućnosti. Neki od njih su

  • Lambda izrazi
  • Stream API
  • ForEach () metoda
  • Zadana metoda
  • API datum datum
  • Nashorn JavaScript Engine
  • Reference metoda
  • StringJoiner

Sada ćemo pogledati detaljno svaku od njih.

1. Lambda izraz

Lambda izraz je anonimna funkcija (funkcija bez imena) koja pomaže u pisanju koda u određenom funkcionalnom stilu. Pojedinačna apstraktna metoda (SAM) može se provesti na jasan i koncizan način koristeći izraz. Budući da se podaci mogu ponavljati, filtrirati i izvući, to je vrlo korisno, posebno u zbirci knjižnica. Lambda izraz također pomaže u smanjenju složenosti koda. Ispod je sintaksa lambda izraza:

Sintaksa:

(Parameters) -> Expression

Kodirati:

( a, b ) -> a + b // Expression takes 2 parameters and return the sum.

2. Stream API

Stream API nudi tehniku ​​za obradu podataka na različite načine, poput filtriranja, vađenja, transformacije itd. Uz pomoć paketa java.util.stream. Ne treba brkati java.util.streams s Java InputStreams ili OutputStreams jer nema veze između njih. Jedna od glavnih prednosti Stream API-ja je ta što ne mijenja izvor. tj. Ako je filtriran skup podataka, stvara se novi skup podataka s filtriranim podacima umjesto izmjene izvornog izvora. Stream API ocjenjuje kôd samo kad je potreban i kod njega ne ponavlja više puta. Ako se mora ponoviti, mora se generirati novi tok. Postoji nekoliko unaprijed definiranih metoda koje to podržavaju. Za ponavljanje struje može se koristiti sljedeći kod.

Kodirati:

Stream.iterate(1, elem->elem+1)

3. ForEach () metoda

Za ponavljanje okvira Collection Collection, Java SE8 nudi novu metodu koja se zove forEach koja je definirana u Iterable sučelju. ForEach () petlja se može koristiti u kolekcijskoj klasi koja proširuje sučelje Iterable. Budući da ova metoda unosi jedan parametar, lambda izraz se također može proslijediti kao parametar.

Kodirati:

age.forEach( age -> ( System.out.println(age); )); //each age is taken and printed

4. Zadana metoda

Obično se ne-apstraktne metode ne mogu dodati sučeljima. Ali, u slučaju Java 8, ona dopušta dodavanje tih metoda u sučelja. Ove se metode pišu sa zadanom ključnom riječi i poznate su kao zadane metode. Budući da se radi o ne-apstraktnim metodama, može se uključiti i tijelo metode. Zanimljivo je da ova značajka osigurava i binarnu kompatibilnost sa starijim verzijama koda.

Kodirati:

public interface Moveable (
default void Sound()(
System.out.println("Hi Anna, How is my sound?");
))

5. Datum Vrijeme API

U Javi 8 uveden je novi API vremena i API gdje su datumi rukovanja drugačijom metodom u usporedbi s drugim verzijama Jave. Ove se klase nazivaju i JSR-310, ThreeTen.

Slijede klase vremena i datuma koji su dostupni na Javi. vremenski paket:

  • Jtime.LocalDate klasa
  • LocalTime klasa
  • LocalDateTime klasa
  • MonthDay klasa
  • OffsetTime klasa
  • OffsetDateTime klasa
  • Sat satova
  • ZonedDateTime klasa
  • ZoneId klasa
  • ZoneOffset klasa
  • Godišnja klasa
  • GodinaMonth klasa
  • Razdoblje klase
  • Razred trajanja
  • Instant klasa
  • DayOfWeek enum
  • Month enum

Kodirati:

Clock cl = Clock.systemDefaultZone();
System.out.println(cl.getZone());

6. Nashorn Javascript Engine

Nashorn je JavaScript motor koji pomaže u dinamičnom izvršavanju JavaScripta u Java Virtual Machine (JVM).

To se može učiniti pomoću dvije metode navedene u nastavku.

  1. Uz pomoć alata naredbenog retka jjs.
  2. Ako ga postavite u izvorni kod Java.

Da biste izvršili pomoću alata jjs naredbenog retka, možete provesti sljedeće korake.

  • Napravite .js datoteku js.
  • Napišite i spremite sljedeći kôd u datoteku.

Kodirati:

var welcome = function()(
print("welcome to Nashorn Javascript Engine");
);
welcome ();

  • Otvoreni terminal naredbenog retka
  • Napišite naredbu jjs welcome.js i kliknite enter.
  • Jednom kada se naredba izvrši, prikazat će se donji izlaz.

Izlaz :

7. Reference metoda

Reference metoda je još jedna značajka koja se uvodi u Java 8 i koja se može koristiti u funkcionalnim metodama sučelja. Na drugi način, može se reći da su oni podskup drugog java svojstva, lambda izrazi. To je zbog toga što se može koristiti i referenca metode ako se može koristiti lambda izraz.

Metode mogu biti:

  • Upućivanje na Konstruktora
  • Upućivanje na statičku metodu
  • Upućivanje na metodu instance

Upućivanje na statičku metodu može biti prikazano u nastavku

Kodirati:

Thread t=new Thread(ExampleClass::ThreadStatusMethod);
t.start();

8. StringJoiner

Javi 8 u Java je dodana nova finalna klasa StringJoiner. util paket. Slijed znakova može se konstruirati razdvojenim razlučivačima poput zareza (, ), crtica (-) itd.

Kodirati:

StringJoiner Names = new StringJoiner("-"); // Here, delimiter is -
// Adding names to StringJoiner
joinNames.add("Anna");
joinNames.add("Adam");

Izlaz:

Poboljšanja sigurnosti

Pored ovih značajki, na Java SE8 je učinjeno još nekoliko sigurnosnih poboljšanja. Oni su:

  • Standardi kriptografije javnog ključa 11 (PKCS) prošireni su na 64-bitne potpore za operativni sustav Windows.
  • Za UNIX platforme predstavljene su dvije nove implementacije. Nudi ponašanje blokiranja i neblokiranja.
  • U dobavljaču SunJCE dodani su i AES i PBE algoritmi poput PBEWithSHA256AndAES_128 i PBEWithSHA512AndAES_256.
  • Java SE 8 podržava proširenje indikacije naziva poslužitelja (SNI) koje proširuje TLS / SSL protokole za povezivanje tijekom rukovanja za podržane aplikacije poslužitelja.

Zaključak

Java SE8 nova je Java verzija koju je razvio Oracle i koja nudi nekoliko značajki. Lambda izraz smatra se najznačajnijim obilježjem među njima. U ovom dokumentu detaljno su objašnjene značajke Java SE 8 i poboljšanja sigurnosti.

Preporučeni članci

Ovo je vodič za novosti u Javi 8 ?. Ovdje smo raspravljali o osam značajki nove jave 8. Također možete proći kroz naše druge povezane članke da biste saznali više -

  1. Izgled kartice na Javi
  2. Obrnuti broj u Javi
  3. JComboBox na Javi
  4. StringBuffer na Javi
  5. Nizi u Java programiranju
  6. Statička metoda JavaScript | Primjeri

Kategorija: