1.實現乙個介面
2.介面中只有乙個抽象方法
3.介面物件是作為方法引數使用的
(引數列表) ->
(引數列表):表示要重寫的抽象方法的引數列表
->:固定語法, 指向/傳遞的意思
:要重寫的方法體
取代匿名內部類
匿名內部類: 本質還是類, 編譯後也會生成位元組碼檔案, 執行時也要載入
lambda: 本質是乙個函式, 編譯後不會有位元組碼檔案, 直接從記憶體中獲取效率更高
1.() 中的引數型別, 可以省略, 如果有多個引數, 每個引數型別都要一起省略
2.{} 中如果只有一行**, 不論這個方法有沒有返回值, 那麼[{} return ;] 可以省略{} return ; 必須一起省略
3.() 中如果只有乙個引數, () 可以省略, 和型別一起省略,() 中如果沒有引數, 必須寫 ()
屬於程式的一部分,可取代一部分配置資訊
函式式介面:介面中只有乙個抽象方法,預設方法\靜態方法\私有方法可隨意
示例:@functionalinte***ce:判斷是否為函式式介面
@override:檢測方法是不是重寫
@suppresswarnings:壓制警告
@deprecated:標記乙個類或者方法或者變數, 過時的
@functionalinte***ce:檢測乙個介面是不是函式式介面
取代引數內的陣列
(資料型別… 資料名)
方法中, 除了可變長引數, 還有別的引數, 可變長引數必須放在引數列表最後,而且乙個方法中, 只能有乙個可變長引數
以方法為單位, 可以取代主方法,可執行
system.out.println(); -> 打樁測試
debug -> 斷點測試
junit -> 單元測試
@test: 測試的方法, 可以直接執行
@before: 在測試方法之前呼叫的
@after: 在測試方法之後呼叫的
lambda表示式 lambda表示式
1.概述 c 11 中的 lambda 表示式用於定義並建立匿名的函式物件,以簡化程式設計工作。lambda 的語法形式如下 函式物件引數 操作符過載函式引數 mutable 或 exception 宣告 返回值型別可以看到,lambda 主要分為五個部分 函式物件引數 操作符過載函式引數 muta...
Lambda表示式和Lambda表示式樹
原版來自 linq學習筆記之二 lambda表示式和lambda表示式樹 lambda 表示式 lambda expressions 是linq實現的另一特性。lambda表示式的作用就是使用使用函式式語法,將方法實現關聯到委託例項。在使用查詢表示式 query expressions 時,查詢表示...
Lambda表示式表示式樹
在c 3.0中,繼匿名方法之後出現了lambda 表示式,使表達更為簡潔 快捷。lambda 表示式使用lambda 運算子 來定義,語法如下 引數列表 lambda 運算子的左邊是輸入引數,定義lambda表示式的接收引數列表,右邊包含表示式或語句塊,表示將表示式的值或語句塊返回的值傳給左邊的引數...