前言
Java Labmda表達式的一個重要用法是簡化某些匿名內(nèi)部類(Anonymous Classes)的寫法。實際上Lambda表達式并不僅僅是匿名內(nèi)部類的語法糖,JVM內(nèi)部是通過invokedynamic指令來實現(xiàn)Lambda表達式的。具體原理放到下一篇。本篇我們首先感受一下使用Lambda表達式帶來的便利之處。
取代某些匿名內(nèi)部類
本節(jié)將介紹如何使用Lambda表達式簡化匿名內(nèi)部類的書寫,但Lambda表達式并不能取代所有的匿名內(nèi)部類,只能用來取代函數(shù)接口(Functional Interface)的簡寫。先別在乎細節(jié),看幾個例子再說。
例子1:無參函數(shù)的簡寫
如果需要新建一個線程,一種常見的寫法是這樣:
// JDK7 匿名內(nèi)部類寫法 new Thread(new Runnable(){// 接口名 @Override public void
延伸閱讀
- ssh框架
2016-09-30
- 阿里移動安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍牙鎖
2017-07-26
- 消息隊列NetMQ 原理分析4-Socket、Session、Option和Pipe
2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標分割】
2017-07-26
- 詞向量-LRWE模型-更好地識別反義詞同義詞
2017-07-26
- 從棧不平衡問題 理解 calling convention
2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明
2017-07-26
- Swift實現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解
2017-07-26
- 阿里移動安全 Android端惡意鎖屏勒索應用分析
2017-07-26
- 集合結合數(shù)據(jù)結構來看看(二)
2017-07-26
學習是年輕人改變自己的最好方式