溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java 8有哪些新特性

發(fā)布時間:2021-11-01 11:36:45 來源:億速云 閱讀:128 作者:iii 欄目:編程語言

本篇內(nèi)容主要講解“Java 8有哪些新特性”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“Java 8有哪些新特性”吧!

介紹

    Java 8 (又稱為 jdk 1.8) 是 Java 語言開發(fā)的一個主要版本。 Oracle 公司于 2014 年 3 月 18 日發(fā)布 Java 8 ,它支持函數(shù)式編程,新的 JavaScript 引擎,新的日期 API,新的Stream API 等。 

新特性 

Java8 新增了非常多的特性,我們主要討論以下幾個:

1.Lambda 表達式 ? Lambda 允許把函數(shù)作為一個方法的參數(shù)(函數(shù)作為參數(shù)傳遞到方法中)。

     語法格式如下  :

(parameters) -> expression


(parameters) ->{ statements; }

    lambda表達式的重要特征:

       a. 可選類型聲明:不需要聲明參數(shù)類型,編譯器可以統(tǒng)一識別參數(shù)值。

       b. 可選的參數(shù)圓括號:一個參數(shù)無需定義圓括號,但多個參數(shù)需要定義圓括號。
       c. 可選的大括號:如果主體包含了一個語句,就不需要使用大括號。
       d. 可選的返回關(guān)鍵字:如果主體只有一個表達式返回值則編譯器會自動返回值,大括號需要指定明表達式返回了一個數(shù)值。

    實例:

// 1. 不需要參數(shù),返回值為 5  
() -> 5  
 
// 2. 接收一個參數(shù)(數(shù)字類型),返回其2倍的值  
x -> 2 * x  
 
// 3. 接受2個參數(shù)(數(shù)字),并返回他們的差值  
(x, y) -> x – y  
 
// 4. 接收2個int型整數(shù),返回他們的和  
(int x, int y) -> x + y  
 
// 5. 接受一個 string 對象,并在控制臺打印,不返回任何值(看起來像是返回void)  
(String s) -> System.out.print(s)

 2.方法引用 ? 方法引用提供了非常有用的語法,可以直接引用已有Java類或?qū)ο螅▽嵗┑姆椒ɑ驑?gòu)造器。與lambda聯(lián)合使用,方法引用可以使語言的構(gòu)造更緊湊簡潔,減少冗余代碼。

    方法引用使用一對冒號 :: 

    不同引入如下:

    構(gòu)造器引用:它的語法是Class::new

    靜態(tài)方法引用:它的語法是Class::static_method

    特定類的任意對象的方法引用:它的語法是Class::method

    特定對象的方法引用:它的語法是instance::method  

3.默認方法 ? 默認方法就是一個在接口里面有了一個實現(xiàn)的方法。

    只需在方法名前面加個 default 關(guān)鍵字即可實現(xiàn)默認方法;

4.新工具 ? 新的編譯工具,如:Nashorn引擎 jjs、 類依賴分析器jdeps。

5.Stream API ?新添加的Stream API(java.util.stream) 把真正的函數(shù)式編程風格引入到Java中。

6.Date Time API ? 加強對日期與時間的處理。

7.Optional 類 ? Optional 類已經(jīng)成為 Java 8 類庫的一部分,用來解決空指針異常。

8.Nashorn, JavaScript 引擎 ? Java 8提供了一個新的Nashorn javascript引擎,它允許我們在JVM上運行特定的javascript應(yīng)用。

到此,相信大家對“Java 8有哪些新特性”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI