java8 新特性之方法引用
方法引用介紹:
方法引用透過方法的名字來指向一個方法。
方法引用可以使語言的構造更緊湊簡潔,減少冗餘程式碼。
方法引用使用一對冒號 :: 。
1、 構造器引用:它的語法是Class::new,或者更一般的Class< T >::new例項如下:
// 構造方法引用 暫時發現只能無參構造方法引用Supplier<Lambda> supplier = Lambda::new;
2、 靜態方法引用:它的語法是Class::static_method,例項如下:
public class Lambda { Lambda(){}; Lambda(int i){}; static void test(Lambda l){System.out.println(l);}; static void test2(String l){System.out.println(l);}; public static void main(String[] args) { // 構造方法引用 暫時發現只能無參構造方法引用 Supplier<Lambda> supplier = Lambda::new; Consumer<Lambda> consumer = x->System.out.println(x);; Consumer<Lambda> consumer2 = Lambda::test; Consumer<String> consumer3 = Lambda::test2; } }
3、特定類任意例項的方法引用:它的語法是instance::method例項如下:
Supplier<Lambda> supplier = Lambda::new; Supplier<Integer> consumer4 = supplier.get()::repair;
由上可以看出,只是把這個類的方法,賦值給函式介面,具體呼叫的時候傳入引數 ,編譯期檢查引數型別是否符合函式介面的泛型。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992808/viewspace-2750556/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- java8的新特性之lambda表示式和方法引用Java
- Java 8 新特性之方法引用Java
- java8 新特性之預設方法Java
- Java8 新特性之預設介面方法Java
- Java8新特性之:OptionalJava
- ?Java8新特性之Lambda表示式,函式式介面,方法引用和default關鍵字Java函式
- ?Java8新特性之Optional類Java
- java8 新特性之Optional 類Java
- Java8 新特性之 Optional 類Java
- Java8——方法引用Java
- java8 新特性之Lambda 表示式Java
- Java8新特性探索之Stream介面Java
- Java8 新特性之 Lambda 表示式Java
- Java8新特性之時間APIJavaAPI
- java8新特性之函式式介面、lambda表示式、介面的預設方法、方法和建構函式的引用Java函式
- JAVA8新特性Java
- Java8 新特性Java
- java8(二)方法引用Java
- java8 新特性之函式式介面Java函式
- java8新特性之lambda表示式(一)Java
- java8 之 Java官方庫的新特性Java
- Java8新特性 - LambdaJava
- Java8的新特性Java
- JAVA8新特性用法Java
- Java8新特性探索之函式式介面Java函式
- Java8新特性第2章(介面預設方法)Java
- Java8新特性探索之新日期時間庫Java
- Java8新特性--Stream APIJavaAPI
- java8新特性stream流Java
- Java8新特性實踐Java
- Java8新特性系列-LambdaJava
- Java8新特性系列(Stream)Java
- Java8新特性系列(Interface)Java
- Java8新特性系列(Lambda)Java
- Java8 新特性詳解Java
- java8新特性學習Java
- [引用分割槽表]Oracle 11g新特性之引用分割槽表Oracle
- Java8的八個新特性Java