Latest web development tutorials

Java 8 novos recursos

Java 8 (também conhecido como JDK 1.8) é um grande lançamento da linguagem Java. Oracle Corporation em 18 de março de 2014 versão Java 8, que suporta programação funcional, um novo motor de JavaScript, a nova data de API, o novo fluxo de API semelhante.


novos Recursos

Java8 acrescentou um monte de recursos, enfocamos o seguinte:

  • As expressões lambda - Lambda permite a função (função como um parâmetro passado para o método como um parâmetro para um método.

  • Método de referência - método de referência fornece uma sintaxe muito útil, você pode fazer referência diretamente uma classe Java existente ou objeto método (exemplo) ou construtor.Em combinação com lambda, configuração de referência método pode ser feita mais idioma compacto e concisa para reduzir o código redundante.

  • O método padrão - um método padrão é implementado com um método no qual a interface.

  • Novas ferramentas - novas ferramentas do compilador, tais como: JJs motor Nashorn, classe jdeps analisador dependentes.

  • Fluxo API - acrescentou nova API Stream (java.util.stream) o verdadeiro estilo de programação funcional introduzido para Java.

  • Data Hora API - o reforço da data e hora do processamento.

  • classe opcional - classe opcional tornou-se parte das bibliotecas Java 8 classe, usados para resolver uma exceção de ponteiro nulo.

  • Nashorn, motor de JavaScript - Java 8 fornece um novo Nashorn javascript motor, o que nos permite executar as aplicações específicas de JavaScript JVM.

Mais novos recursos podem ser encontrados no site oficial: o que apos Nova no JDK 8.

Java 8 artigo sobre os exemplos que usam o ambiente jdk 1.8, você pode usar o seguinte comando para exibir a versão atual do 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)

Estilo de programação

Java 8 querem ter seu próprio estilo de programação e distinto com Java 7, o exemplo a seguir mostra o formato Java 7 e Java 8 de programação:

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

Implementação do script acima, a saída é:

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

Em seguida, vamos informá-lo sobre os detalhes dos novos recursos Java 8:

Não. propriedade
1 As expressões lambda
2 referências de método
3 interface de função
4 O método padrão
5 córrego
6 Classe opcional
7 Nashorn, motor de JavaScript
8 A nova data e hora API
9 Base64