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

Java?lambda表達(dá)式與泛型整理總結(jié)

 更新時(shí)間:2022年07月30日 11:14:26   作者:·~簡(jiǎn)單就好  
Lambda?表達(dá)式(lambda?expression)是一個(gè)匿名函數(shù),Lambda表達(dá)式基于數(shù)學(xué)中的λ演算得名。泛型編程,故如其名,是一個(gè)泛化的編程方式。其實(shí)現(xiàn)原理為程序員編寫(xiě)一個(gè)函數(shù)/類的代碼示例,讓編譯器去填補(bǔ)出不同的函數(shù)實(shí)現(xiàn)

泛型

泛型的語(yǔ)法定義

class 類名 <泛型標(biāo)識(shí),泛型標(biāo)識(shí),…>{ private 泛型標(biāo)識(shí)1,變量名;常用的泛型標(biāo)識(shí):T,E,K,V } 里面正常寫(xiě)法

public class GenericDemo<K> {
    //定義數(shù)組
    private K[] arr;
}

泛型的使用語(yǔ)法

  • 類名<具體的數(shù)據(jù)> 對(duì)象名 = new 類名<具體的數(shù)據(jù)類型>()
  • jdk1.7之后,后邊的<>可以省略不寫(xiě)
  • 類名<具體的數(shù)據(jù)> 對(duì)象名 = new 類名<>()

泛型總結(jié)

  • 類型參數(shù)化,讓類的定義更加通用
  • 泛型不支持基本類型,因?yàn)樵诰幾g時(shí),基本類型無(wú)法轉(zhuǎn)換成Object
  • 泛型類在創(chuàng)建對(duì)象的時(shí)候,如果沒(méi)有指定數(shù)據(jù)類型,將按照Object類型來(lái)操作
  • 同一泛型類在邏輯上可以看成是多個(gè)不同的類型,但實(shí)際是相同的類型

從泛型類派生子類

子類也是泛型,子類和父類的泛型要一致 (例如:連泛型的類型T要一致,寫(xiě)的內(nèi)容相同),

如果父類沒(méi)有指明類型,則父類要按照Object類型處理

public class Child<T> extends Parent<T> {
}

子類不是泛型,父類要明確泛型類型,

如果父類沒(méi)有指明類型,則父類要按照Object類型處理

泛型接口

  • 泛型接口的語(yǔ)法定義:interface 接口名<泛型標(biāo)識(shí)1,泛型標(biāo)識(shí)2,…>{ 泛型標(biāo)識(shí) 方法名(); … }
  • 實(shí)現(xiàn)類也是泛型,實(shí)現(xiàn)類和接口的泛型要一致,如果接口沒(méi)有指明類型,則接口要按照Object類型處理
  • 實(shí)現(xiàn)類不是泛型,接口要明確泛型接口的數(shù)據(jù)類型,如果接口沒(méi)有指明類型,則接口按照Object類型處理

lambda表達(dá)式

lambda表達(dá)式概念

  • 面向?qū)ο蟮木幊讨袕?qiáng)調(diào),必須通過(guò)對(duì)象的形式去做事情;函數(shù)思想則是盡量忽略對(duì)象的復(fù)雜寫(xiě)法,“強(qiáng)調(diào)做什么,而不是以什么形式去做”
  • lambda表達(dá)式就是函數(shù)思想的體現(xiàn)
  • lambda表達(dá)式就是定義函數(shù)式的簡(jiǎn)化寫(xiě)法,而不是函數(shù)調(diào)用的簡(jiǎn)化寫(xiě)法

lambda表達(dá)式格式

  • 三要素:形式參數(shù),箭頭,代碼塊
  • 形如:(形參)->代碼塊
  • 形參如果多個(gè)參數(shù),參數(shù)之間逗號(hào)隔開(kāi),如果沒(méi)有參數(shù),留空括號(hào),不用留空格
  • -> 一定的是英文,固定寫(xiě)法,表示執(zhí)行
  • 代碼塊:具體要做的事情
  • 使用前提:使用接口:接口當(dāng)中有且只有一個(gè)抽象方法

代碼示例:

package com.lambda;
public class Lambda {
    public static void main(String[] args) {
        //正常寫(xiě)法
        Mythread mythread = new Mythread();
        Thread t = new Thread(mythread);
        t.start();
        //匿名內(nèi)部類
        new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("多線程1就緒了");
            }
        }).start();
        //lambda表達(dá)式:創(chuàng)建線程
        new Thread(()->{
            System.out.println("多線程2就緒了");
        }).start();
    }
}
class Mythread implements Runnable{
    @Override
    public void run() {
        System.out.println("多線程就緒");
    }
}

到此這篇關(guān)于Java lambda表達(dá)式與泛型整理總結(jié)的文章就介紹到這了,更多相關(guān)Java lambda表達(dá)式與泛型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java訪問(wèn)數(shù)據(jù)庫(kù)實(shí)例詳解

    Java訪問(wèn)數(shù)據(jù)庫(kù)實(shí)例詳解

    這篇文章主要為大家詳細(xì)介紹了Java訪問(wèn)數(shù)據(jù)庫(kù)實(shí)例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • SpringSecurity集成第三方登錄過(guò)程詳解(最新推薦)

    SpringSecurity集成第三方登錄過(guò)程詳解(最新推薦)

    在ThirdAuthenticationFilter 類的attemptAuthentication()方法中,我們通過(guò)authType類型,然后創(chuàng)建對(duì)應(yīng)的Authentication實(shí)現(xiàn)來(lái)實(shí)現(xiàn)不同方式的登錄,下面給大家分享SpringSecurity集成第三方登錄過(guò)程,感興趣的朋友一起看看吧
    2024-05-05
  • java中字符串轉(zhuǎn)整數(shù)及MyAtoi方法的實(shí)現(xiàn)

    java中字符串轉(zhuǎn)整數(shù)及MyAtoi方法的實(shí)現(xiàn)

    這篇文章主要介紹了java中字符串轉(zhuǎn)整數(shù)及MyAtoi方法的實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • springboot使用@value注入配置失敗的解決

    springboot使用@value注入配置失敗的解決

    這篇文章主要介紹了springboot使用@value注入配置失敗的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • spring boot啟動(dòng)時(shí)加載外部配置文件的方法

    spring boot啟動(dòng)時(shí)加載外部配置文件的方法

    這篇文章主要給大家介紹了關(guān)于spring boot啟動(dòng)時(shí)加載外部配置文件的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-02-02
  • Spring中DeferredResult異步處理

    Spring中DeferredResult異步處理

    DeferredResult是Spring中處理異步請(qǐng)求的強(qiáng)大工具,可以幫助改善應(yīng)用程序的性能和用戶體驗(yàn),本文就來(lái)介紹一下Spring中DeferredResult異步處理,感興趣的可以了解一下
    2023-12-12
  • Java設(shè)計(jì)模式——工廠設(shè)計(jì)模式詳解

    Java設(shè)計(jì)模式——工廠設(shè)計(jì)模式詳解

    這篇文章主要介紹了Java設(shè)計(jì)模式——工廠設(shè)計(jì)模式詳解,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • 深入理解JAVA基礎(chǔ)類庫(kù)中對(duì)象Object類

    深入理解JAVA基礎(chǔ)類庫(kù)中對(duì)象Object類

    Object類是一個(gè)特殊的類,是所有類的父類,如果一個(gè)類沒(méi)有用extends明確指出繼承于某個(gè)類,那么它默認(rèn)繼承Object類。這里主要總結(jié)Object類中的兩個(gè):toString()與equals()方法
    2021-09-09
  • JAVA如何調(diào)用Shell腳本

    JAVA如何調(diào)用Shell腳本

    本篇文章主要介紹了JAVA如何調(diào)用Shell腳本,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • 解決idea啟動(dòng)報(bào)錯(cuò)javax.imageio.IIOException的問(wèn)題

    解決idea啟動(dòng)報(bào)錯(cuò)javax.imageio.IIOException的問(wèn)題

    這篇文章主要介紹了idea啟動(dòng)報(bào)錯(cuò)javax.imageio.IIOException,解決打不開(kāi)idea問(wèn)題,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09

最新評(píng)論

清远市| 都安| 江达县| 道真| 全椒县| 陇川县| 东宁县| 田林县| 综艺| 曲沃县| 五河县| 浦江县| 安福县| 东阿县| 济阳县| 婺源县| 桦南县| 保德县| 河西区| 伊吾县| 安顺市| 湘乡市| 德州市| 鞍山市| 台东县| 乌苏市| 绥江县| 钟祥市| 固安县| 白河县| 陇南市| 溆浦县| 静乐县| 紫阳县| 岳阳县| 昌黎县| 湛江市| 漾濞| 内江市| 长治县| 曲阜市|