最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java匿名類(lèi)和匿名函數(shù)的概念和寫(xiě)法

 更新時(shí)間:2023年06月09日 09:28:35   作者:明月一壺酒  
匿名函數(shù)寫(xiě)法和匿名類(lèi)寫(xiě)法的前提必須基于函數(shù)式接口匿名函數(shù)寫(xiě)法和匿名類(lèi)寫(xiě)法其本質(zhì)是同一個(gè)東西,只是簡(jiǎn)化寫(xiě)法不同使用Lambda表達(dá)式簡(jiǎn)寫(xiě)匿名函數(shù)時(shí),可以同時(shí)省略實(shí)現(xiàn)類(lèi)名、函數(shù)名,這篇文章主要介紹了Java匿名類(lèi)和匿名函數(shù)的概念和寫(xiě)法,需要的朋友可以參考下

前言

Lambda流式操作是Java8中重要的特性,lambda表達(dá)式核心概念為 函數(shù)式接口、::-> 等基本語(yǔ)法,可以大大減少代碼量的編寫(xiě),使代碼更加優(yōu)雅

  • 只有一個(gè)抽象函數(shù)的接口,就是函數(shù)式接口
  • :: 可以稱之為域運(yùn)算符,主要是用來(lái)獲取方法
  • -> 的語(yǔ)法為 (變量或參數(shù))->{代碼體},是匿名函數(shù)的寫(xiě)法。也叫變量和代碼的分隔符
  • 當(dāng)只獲取一個(gè)方法屬性的時(shí)候 :: 和 -> 可以通用

介紹

接口:

  • 接口可以定義在另一個(gè)類(lèi)的內(nèi)部
  • 接口中的方法都是抽象方法
  • 接口中的常量都是靜態(tài)常量

類(lèi):

  • 類(lèi)可以定義在另一個(gè)類(lèi)的內(nèi)部
  • 也可以定義為內(nèi)部靜態(tài)類(lèi),使用 static 關(guān)鍵字
  • 還可以定義為局部?jī)?nèi)部類(lèi),定義在方法中

一、什么是Lambda表達(dá)式?

lambda表達(dá)式是為了簡(jiǎn)寫(xiě)代碼的寫(xiě)法

二、什么是函數(shù)式接口?

        只有一個(gè)抽象方法的接口就是函數(shù)式接口

//1.定義一個(gè)函數(shù)式接口。只有一個(gè)抽象方法的接口就是函數(shù)式接口
interface ILike{
    void testLambda();
}

三、什么是匿名內(nèi)部類(lèi)?

  • 沒(méi)有類(lèi)名
  • 必須借助接口或父類(lèi)
  • 通過(guò)實(shí)例化函數(shù)式接口就可以完成匿名內(nèi)部類(lèi)實(shí)現(xiàn)此接口并重寫(xiě)方法
//5.匿名內(nèi)部類(lèi),沒(méi)有類(lèi)名稱,必須借助接口
like = new ILike() {
    @Override
    public void testLambda() {
        System.out.println("i like lambda4");
    }
};
like.testLambda();

四、用 Lambda 簡(jiǎn)化匿名內(nèi)部類(lèi)的寫(xiě)法

  • 匿名內(nèi)部類(lèi)是為了省去類(lèi)名的寫(xiě)法
  • Lambda 簡(jiǎn)化寫(xiě)法不但可以省去類(lèi)名,還可以省去接口名和函數(shù)名。因?yàn)橹挥幸粋€(gè)抽象方法,可以直接實(shí)現(xiàn)并指向這個(gè)抽象方法和方法體
//6.用lambda簡(jiǎn)化,因?yàn)榻涌谥兄挥幸粋€(gè)函數(shù),所以可以直接省略實(shí)例化的接口名和函數(shù)名
like = () -> {
    System.out.println("i like lambda5");
};
like.testLambda();

結(jié)論

匿名函數(shù)寫(xiě)法和匿名類(lèi)寫(xiě)法的前提必須基于函數(shù)式接口匿名函數(shù)寫(xiě)法和匿名類(lèi)寫(xiě)法其本質(zhì)是同一個(gè)東西,只是簡(jiǎn)化寫(xiě)法不同使用Lambda表達(dá)式簡(jiǎn)寫(xiě)匿名函數(shù)時(shí),可以同時(shí)省略實(shí)現(xiàn)類(lèi)名、函數(shù)名。除此外也可以使用傳統(tǒng)寫(xiě)法

到此這篇關(guān)于Java匿名類(lèi)和匿名函數(shù)的概念和寫(xiě)法的文章就介紹到這了,更多相關(guān)java匿名類(lèi)和匿名函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • eclipse maven maven-archetype-webapp 創(chuàng)建失敗問(wèn)題解決

    eclipse maven maven-archetype-webapp 創(chuàng)建失敗問(wèn)題解決

    這篇文章主要介紹了eclipse maven maven-archetype-webapp 創(chuàng)建失敗問(wèn)題解決的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • Java監(jiān)聽(tīng)器的作用及用法代碼示例

    Java監(jiān)聽(tīng)器的作用及用法代碼示例

    這篇文章主要介紹了Java監(jiān)聽(tīng)器的作用及用法代碼示例,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • Java實(shí)現(xiàn)鼠標(biāo)模擬與鍵盤(pán)映射

    Java實(shí)現(xiàn)鼠標(biāo)模擬與鍵盤(pán)映射

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)鼠標(biāo)模擬與鍵盤(pán)映射,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 詳解Spring的StringUtils踩坑記錄

    詳解Spring的StringUtils踩坑記錄

    這篇文章主要介紹了詳解Spring的StringUtils踩坑記錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Spring Boot接收單個(gè)String入?yún)⒌慕鉀Q方法

    Spring Boot接收單個(gè)String入?yún)⒌慕鉀Q方法

    這篇文章主要給大家介紹了關(guān)于Spring Boot接收單個(gè)String入?yún)⒌慕鉀Q方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用spring boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • 使用mybatis格式化查詢出的日期

    使用mybatis格式化查詢出的日期

    這篇文章主要介紹了使用mybatis格式化查詢出的日期,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • SpringBoot自定義Starter及使用

    SpringBoot自定義Starter及使用

    這篇文章主要介紹了SpringBoot自定義Starter及使用,Starter是Spring Boot中的一個(gè)非常重要的概念,Starter相當(dāng)于模塊,它能將模塊所需的依賴整合起來(lái)并對(duì)模塊內(nèi)的Bean根據(jù)環(huán)境進(jìn)行自動(dòng)配置,需要的朋友可以參考下
    2023-07-07
  • Java面試題沖刺第五天--基礎(chǔ)篇2

    Java面試題沖刺第五天--基礎(chǔ)篇2

    這篇文章主要為大家分享了最有價(jià)值的三道java面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Springboot使用Redis中ZSetOperations實(shí)現(xiàn)博客訪問(wèn)量

    Springboot使用Redis中ZSetOperations實(shí)現(xiàn)博客訪問(wèn)量

    在日常的網(wǎng)站使用中,經(jīng)常會(huì)碰到頁(yè)面的訪問(wèn)量,本文主要介紹了Springboot使用Redis中ZSetOperations實(shí)現(xiàn)博客訪問(wèn)量,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • Java并發(fā)工具類(lèi)Phaser詳解

    Java并發(fā)工具類(lèi)Phaser詳解

    這篇文章主要介紹了Java并發(fā)工具類(lèi)Phaser詳解,Phaser(階段協(xié)同器)是一個(gè)Java實(shí)現(xiàn)的并發(fā)工具類(lèi),用于協(xié)調(diào)多個(gè)線程的執(zhí)行,它提供了一些方便的方法來(lái)管理多個(gè)階段的執(zhí)行,可以讓程序員靈活地控制線程的執(zhí)行順序和階段性的執(zhí)行,需要的朋友可以參考下
    2023-11-11

最新評(píng)論

雅安市| 大名县| 开江县| 新平| 泸溪县| 武义县| 盈江县| 佛冈县| 平舆县| 东阿县| 土默特左旗| 宿松县| 乌审旗| 峡江县| 阳泉市| 连江县| 资阳市| 文登市| 江达县| 阜城县| 承德市| 辉南县| 溆浦县| 长沙县| 纳雍县| 满洲里市| 民县| 安达市| 闽清县| 拜城县| 罗平县| 沅陵县| 龙游县| 凭祥市| 万盛区| 庆安县| 阳东县| 巴林左旗| 广丰县| 斗六市| 齐河县|