Latest web development tutorials

Java 8 nouvelles fonctionnalités

Java 8 (également connu sous le JDK 1.8) est une version majeure du langage Java. Oracle Corporation le 18 Mars, 2014 version Java 8, qui prend en charge la programmation fonctionnelle, un nouveau moteur JavaScript, la nouvelle API de date, la nouvelle API Stream comme.


Nouvelles fonctionnalités

Java8 ajouté beaucoup de fonctionnalités, nous nous sommes concentrés sur les points suivants:

  • Lesexpressions lambda - Lambda permet la fonction (fonction en tant que paramètre passé dans la méthode en tant que paramètre à une méthode.

  • Méthode de référence- méthode de référence fournit une syntaxe très utile, vous pouvez directement faire référence à une classe Java existante ou objet méthode ou le constructeur (instance). En combinaison avec lambda, la configuration de référence de la méthode peut être un langage plus compact et concis pour réduire le code redondant.

  • La méthode par défaut - une méthode par défaut est mis en oeuvre par un procédé dans lequel l'interface.

  • Denouveaux outils - nouveaux outils de compilation, tels que: jjs moteur Nashorn, jdeps analyseur dépendant de la classe.

  • API Stream - a ajouté une nouvelle API de flux (de java.util.stream) le vrai style de programmation fonctionnel introduit à Java.

  • Date Heure API - pour renforcer la date et l' heure du traitement.

  • classe optionnelle - classe facultative est devenue partie intégrante des bibliothèques Java 8 classes, utilisées pour résoudre une exception de pointeur nul.

  • Nashorn, moteur JavaScript - Java 8 fournit une nouvelle Nashorn javascript moteur, ce qui nous permet d'exécuter des applications javascript spécifiques JVM.

Plus de nouvelles fonctionnalités peuvent être trouvées sur le site officiel: . Quoi apos neuf dans le JDK 8

Java 8 article sur les exemples que nous utilisons l'environnement JDK 1.8, vous pouvez utiliser la commande suivante pour afficher la version actuelle du 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)

programmation style

Java 8 veulent avoir leur propre style de programmation et distingué avec Java 7, l'exemple suivant montre le format Java 7 et Java 8 programmation:

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));
   }
}

Mise en œuvre du script ci-dessus, la sortie est:

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

Ensuite, nous allons vous informer sur les détails de la nouvelle fonctionnalités Java 8:

Non. propriété
1 Les expressions lambda
2 références de méthode
3 Interface Fonction
4 La méthode par défaut
5 ruisseau
6 classe en option
7 Nashorn, moteur JavaScript
8 La nouvelle date et l' heure API
9 Base64