JDK1.8新特性(一):JDK1.8究竟有哪些新特性呢

在這裏插入圖片描述
目前JDK1.8被各大公司、各大項目紛紛使用,作爲Java開發中使用最多的版本,細心的你,或許早已發現它與之前版本存在着較大的差異。如果能熟練掌握使用這些差異、新特性,你會發現另一片天地。今天抽時間整理下,JDK1.8新特性究竟有哪些?並以【JDK1.8新特性】專題逐一展開討論、學習。

(JDK1.8新特性常常在面試中被問及的頻率很高哦)

JDK1.8概述

JDK1.8,又稱之爲Java 8(我習慣叫它爲JDK1.8,後續統一叫做JDK1.8),是Java語言開發的一個主要版本。Oracle公司於2014年3月18日發佈,它支持函數式編程,新的JavaScript引擎,新的日期API,新的Stream API等。

JDK1.8相比1.7之前版本,有以下幾方面的優化:

  • 速度更快;
  • 代碼更少(Lambda表達式);
  • 強大Stream API;
  • 便於並行;
  • 最大化減少空指針異常(OPtional類)。

舉例如下,JDK1.8的特性是不是與衆不同。

package com.xcbeyond.study.jdk8;

import org.junit.Test;
import java.util.Arrays;
import java.util.List;

/**
 * JDK1.8新特性
 * @Auther: xcbeyond
 * @Date: 2019/11/27 0027 23:53
 */
public class Java8Test {

    @Test
    public void java8Example() {
        // 定義一個整型list,對其進行遍歷
        Integer[] numArray={1,2,3,4,5,6,7,8};
        List<Integer> numList= Arrays.asList(numArray);

        /**
         * 方式1:常規foreach
         */
        for (int num : numList) {
            System.out.println(num);
        }

        /**
         * 方式2:JDK1.8 新特性寫法(Lambda表達式)
         *  代碼量是不是少了很多
         */
        numList.forEach((num) -> System.out.println(num));
    }
}

新特性

JDK1.8新增了非常多的特性,本專題主要討論以下幾個:

  • Lambda表達式:Lambda允許把函數作爲一個方法的參數(函數作爲參數傳遞到方法中)。
  • 方法引用:方法引用提供了非常有用的語法,可以直接引用已有Java類或對象(實例)的方法或構造器。與lambda聯合使用,方法引用可以使語言的構造更緊湊簡潔,減少冗餘代碼。
  • 默認方法:默認方法就是一個在接口裏面有了一個實現的方法。
  • 新工具:新的編譯工具,如:Nashorn引擎 jjs、 類依賴分析器jdeps。
  • Stream API:新添加的Stream API(java.util.stream) 把真正的函數式編程風格引入到Java中。
  • Date Time API:加強對日期與時間的處理。
  • Optional類:Optional 類已經成爲 Java 8 類庫的一部分,用來解決空指針異常。
  • Nashorn,JavaScript引擎:JDK1.8提供了一個新的Nashorn javascript引擎,它允許我們在JVM上運行特定的javascript應用。

參考資料:

  1. https://www.oracle.com/technetwork/java/javase/8-whats-new-2157071.html
  2. https://www.runoob.com/java/java8-new-features.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章