国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

Functional接口簡(jiǎn)介

adam1q84 / 1444人閱讀

摘要:現(xiàn)實(shí)世界中的例子多線程中用于執(zhí)行無(wú)返回結(jié)果的接口,只有一個(gè)方法,很簡(jiǎn)單的嘛使用示例在主線程外異步地執(zhí)行任務(wù)使用表達(dá)式彬哥一行代碼還是做了不少事情的嘛創(chuàng)建了一個(gè)異步任務(wù)。納尼哪里沒(méi)錯(cuò),就是彬哥,這是一個(gè)表達(dá)式。

Functional接口簡(jiǎn)介

什么是Functional接口?

包含有單一抽象方法(Single Abstract Method)的接口就是Functional接口。簡(jiǎn)單來(lái)說(shuō),就是有且只有一個(gè)非default方法的接口。為什么default方法不被計(jì)算進(jìn)去呢?原因也很簡(jiǎn)單,因?yàn)?b>default方法是已經(jīng)有了一個(gè)實(shí)現(xiàn)了啊,所以并不是抽象的。

所有Functional接口都建議打上@FunctionalInterface注解。
這樣做有兩個(gè)好處:

明確地表明了這個(gè)接口作用,告訴調(diào)用方,“我”可以作為lambda表達(dá)式使用。

借助編譯器來(lái)提前暴露錯(cuò)誤。比如,你原本想寫(xiě)一個(gè)Functional接口以便可以在lambda表達(dá)式中使用,但實(shí)際上這個(gè)接口卻包含了一個(gè)以上的非default方法,這時(shí)編譯器就會(huì)提示你,“小伙,你肯定弄錯(cuò)了什么,這不是Functional接口啊”。

現(xiàn)實(shí)世界中的例子

多線程中用于執(zhí)行無(wú)返回結(jié)果的Runnable接口,只有一個(gè)run方法,很“簡(jiǎn)單”的嘛!

 @FunctionalInterface
 public interface Runnable {
     public abstract void run();
 }

使用示例

在主線程外異步地執(zhí)行任務(wù)(使用lambda表達(dá)式):

 public static void main(String[] args) {
   new Thread(() -> System.out.println("Hello 彬哥!")).start();
 }

一行代碼還是做了不少事情的嘛:

創(chuàng)建了一個(gè)異步任務(wù)Runnable。納尼?哪里?沒(méi)錯(cuò), 就是() -> System.out.println("Hello 彬哥!"),這是一個(gè)lambda表達(dá)式。

使用上面創(chuàng)建的任務(wù),來(lái)構(gòu)造了一個(gè)新的線程,new Thread()

啟動(dòng)了這個(gè)線程,start()。

小結(jié)
只有一個(gè)抽象方法的接口是Functional接口,要打上@FunctionalInterface注解。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/71725.html

相關(guān)文章

  • Function相關(guān)接口簡(jiǎn)介

    摘要:相關(guān)接口簡(jiǎn)介什么是接口,它代表這樣的一個(gè)函數(shù),接受一個(gè)參數(shù),然后返回一個(gè)結(jié)果。參數(shù)和返回值相互轉(zhuǎn)化的個(gè)作為參數(shù)的和個(gè)作為返回值的相互組合去掉重復(fù)的嗯,又到種接口,,,,,。 Function相關(guān)接口簡(jiǎn)介 什么是Function接口? interface Function,它代表這樣的一個(gè)函數(shù),接受一個(gè)參數(shù),然后返回一個(gè)結(jié)果。 Function接口的functional方法 R app...

    gotham 評(píng)論0 收藏0
  • Java8: Functional Interface and Lambda Expression

    摘要:寫(xiě)在前面最近在看實(shí)戰(zhàn)感覺(jué)這本書(shū)的排版紙質(zhì)內(nèi)容真的都超級(jí)棒個(gè)人覺(jué)得這本書(shū)還是很值得一讀本文簡(jiǎn)單或詳細(xì)介紹一下的和表達(dá)式函數(shù)式接口是在才開(kāi)始引入的首先看一下普通接口和函數(shù)式接口的區(qū)別普通接口指的是一些具有相同屬性和行為的類(lèi)的抽象函數(shù)式接口也是同 寫(xiě)在前面: 最近在看,感覺(jué)這本書(shū)的排版,紙質(zhì),內(nèi)容真的都超級(jí)棒,個(gè)人覺(jué)得這本書(shū)還是很值得一讀.本文簡(jiǎn)單或詳細(xì)介紹一下Java8的Functiona...

    sunnyxd 評(píng)論0 收藏0
  • Java8 lambda支持

    摘要:函數(shù)式編程說(shuō)前,先理解下什么是函數(shù)式編程,如果你是個(gè)純程序員,而且之前一直是沒(méi)有使用過(guò),可能還沒(méi)有使用過(guò)這種編程方式。表達(dá)式可以表示閉包注意和數(shù)學(xué)傳統(tǒng)意義上的不同。意思就是說(shuō),只要是接口類(lèi)型,我們都可以傳入表達(dá)式。在包下定義了各種函數(shù)接口 函數(shù)式編程 說(shuō)lambdas前,先理解下什么是函數(shù)式編程,如果你是個(gè)純Java程序員,而且之前一直是沒(méi)有使用過(guò)Java8,可能還沒(méi)有使用過(guò)這種編程方...

    Betta 評(píng)論0 收藏0
  • Functional CSS: 從試著改進(jìn)可重用CSS做起

    摘要:從試著改進(jìn)可重用做起泊學(xué)視頻回想起每次更新泊學(xué)網(wǎng)站,最讓我頭疼的,就是改寫(xiě)。于是我?guī)缀醪患偎妓鞯膶?xiě)出了這樣的模板它同樣包含了一個(gè)封面圖,一個(gè)標(biāo)題和一個(gè)簡(jiǎn)介。 從試著改進(jìn)可重用CSS做起 泊學(xué)4K視頻 回想起每次更新泊學(xué)網(wǎng)站,最讓我頭疼的,就是改寫(xiě)CSS。在不同的階段,對(duì)CSS不斷深入的理解,對(duì)網(wǎng)站內(nèi)容的調(diào)整,對(duì)UI的重用需求,都影響著CSS的編寫(xiě)方式,因此,稍不留神,你的代碼理解就會(huì)充...

    microelec 評(píng)論0 收藏0
  • 不得不知的責(zé)任鏈設(shè)計(jì)模式

    世界上最遙遠(yuǎn)的距離,不是生與死,而是它從你的世界路過(guò)無(wú)數(shù)次,你卻選擇視而不見(jiàn),你無(wú)情,你冷酷啊...... showImg(https://segmentfault.com/img/remote/1460000019550563); 被你忽略的就是責(zé)任鏈設(shè)計(jì)模式,希望它再次經(jīng)過(guò)你身旁你會(huì)猛的發(fā)現(xiàn),并對(duì)它微微一笑...... 責(zé)任鏈設(shè)計(jì)模式介紹 抽象介紹 初次見(jiàn)面,了解表象,深入交流之后(看完文中的...

    raise_yang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<