方法引用
- 將已經(jīng)寫好的方法拿過來, 作為函數(shù)式接口的抽象方法的方法體
- 引用處必須是函數(shù)式接口
- 被引用的方法必須存在
- 被引用的方法返回值和參數(shù)必須和抽象方法保持一致
- 被引用的方法的功能需要滿足當前需求
引用靜態(tài)方法
- 格式: 類名 :: 靜態(tài)方法
引用成員方法
- 格式: 對象 :: 成員方法
- 其他類 -- 其他類對象 :: 方法名
- 本類 -- this :: 方法名(引用處不能是靜態(tài)方法, 靜態(tài)方法中沒有this)
- 父類 -- super :: 方法名(引用處不能是靜態(tài)方法, 靜態(tài)方法中沒有super)
引用構造方法
- 格式: 類名 :: new
- 需要根據(jù)實際情況重載構造方法
使用類名引用成員方法(不能引用所有類中的成員方法)
- 格式: 類名 :: 成員方法
使用類名引用成員方法的特殊規(guī)則
- 引用處必須是函數(shù)式接口
- 被引用的方法必須存在
- 被引用的方法的形參, 需要跟抽象方法的第二個參數(shù)到最后一個參數(shù)保持一致, 返回值類型需要一致
- 被引用的方法的功能需要滿足當前需求
此時抽象方法的形參詳解:
- 第一個參數(shù): 表示被引用方法的調(diào)用者, 決定了可以引用哪些類中的方法
在Stream流里面, 第一個參數(shù)一般都表示流里面的每一個數(shù)據(jù)
假設流里面的數(shù)據(jù)是字符串類型, 那么使用這種方法來引用方法, 則只能引用String這個類里面的方法 - 第二個參數(shù)到最后一個參數(shù): 跟被引用方法的形參保持一致, 如果沒有第二個參數(shù), 則被引用方法只能是空參的成員方法
引用數(shù)組的構造方法
- 格式: 數(shù)據(jù)類型[] :: new