Latest web development tutorials

Java 8 nowych funkcji

Java 8 (znana również jako JDK 1.8) jest główną wersją języka Java. Oracle Corporation w dniu 18 marca 2014 release Java 8, który wspiera programowanie funkcjonalne, nowy silnik JavaScript, nowy termin API, nowy Stream API podobne.


Nowe funkcje

Java8 dodał wiele funkcji, skupiliśmy się na:

  • Wyrażenia lambda - N- (funkcja umożliwia funkcję jako parametr przekazany do metody jako parametr do metody.

  • Metoda porównawcza - metoda referencyjna stanowi bardzo użyteczne składni, można bezpośrednio odnosić się do istniejącej klasy Javy lub (instancja) Metoda obiektu lub konstruktora.W połączeniu z lambda, konfiguracja odniesienia metoda może być bardziej zwarta i zwięzły język ograniczenia kodu nadmiarowego.

  • Domyślny method - metoda domyślna jest realizowane za pomocą sposobu, w którym interfejs.

  • Nowe narzędzia - nowe narzędzia, takie jak kompilator: JJs Nashorn silnika, zależnych od klasy jdeps parsera.

  • Stream API - dodano nowe Stream API (java.util.stream) prawdziwą funkcjonalny styl wprowadzony do programowania Java.

  • Data Godzina API - wzmocnienie datę i czas przetwarzania.

  • Opcjonalnie klasy - Opcjonalnie klasa stała się częścią bibliotek Java 8 klas, wykorzystywanych do rozwiązywania wyjątku null pointer.

  • Nashorn, silnik JavaScript - Java 8 zapewnia nowy Nashorn javascript silnika, co pozwala nam działać na JVM konkretnych zastosowań javascript.

Więcej nowych funkcji można znaleźć na oficjalnej stronie: . Pomocy Co APOS nowego w JDK 8

Java 8 artykuł o przykładach używamy środowiska JDK 1.8, można użyć następującego polecenia, aby wyświetlić aktualną wersję JDK:

$ java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

Styl programowania

Java 8 chce mieć swój własny styl programowania i wyróżniającą z Java 7, poniższy przykład przedstawia format programowania Java i Java 7 8:

import java.util.Collections;
import java.util.List;
import java.util.ArrayList;
import java.util.Comparator;

public class Java8Tester {
   public static void main(String args[]){
   
      List<String> names1 = new ArrayList<String>();
      names1.add("Google ");
      names1.add("w3big ");
      names1.add("Taobao ");
      names1.add("Baidu ");
      names1.add("Sina ");
		
      List<String> names2 = new ArrayList<String>();
      names2.add("Google ");
      names2.add("w3big ");
      names2.add("Taobao ");
      names2.add("Baidu ");
      names2.add("Sina ");
		
      Java8Tester tester = new Java8Tester();
      System.out.println("使用 Java 7 语法: ");
		
      tester.sortUsingJava7(names1);
      System.out.println(names1);
      System.out.println("使用 Java 8 语法: ");
		
      tester.sortUsingJava8(names2);
      System.out.println(names2);
   }
   
   // 使用 java 7 排序
   private void sortUsingJava7(List<String> names){   
      Collections.sort(names, new Comparator<String>() {
         @Override
         public int compare(String s1, String s2) {
            return s1.compareTo(s2);
         }
      });
   }
   
   // 使用 java 8 排序
   private void sortUsingJava8(List<String> names){
      Collections.sort(names, (s1, s2) -> s1.compareTo(s2));
   }
}

Realizacja powyższego scenariusza, wyjście jest:

$ javac Java8Tester.java
$ java Java8Tester
使用 Java 7 语法: 
[Baidu , Google , w3big , Sina , Taobao ]
使用 Java 8 语法: 
[Baidu , Google , w3big , Sina , Taobao ]

Następnie będziemy krótki Cię o szczegółach nowych funkcji Java 8:

Nie. nieruchomość
1 wyrażenia lambda
2 metoda odniesienia
3 Interfejs funkcji
4 Domyślna metoda
5 strumień
6 opcjonalnie klasy
7 Nashorn, silnik JavaScript
8 Nowa data i godzina API
9 Base64