方法的引用

2021-10-10 20:01:57 字數 2747 閱讀 4621

public class demo01printable );//lambda表示式

/* 分析:lambda表示式目的:列印引數傳遞的字串

1、system.out物件已經存在

2、println方法也是已經存在的

可以優化lambda表示式

*/ printstring(system.out::println);//方法引用寫法 雙冒號::

}//定義乙個方法 引數傳遞prinable介面,對字串進行列印

public static void printstring(printable p)

}

/*

通過物件名引用成員方法

使用前提 物件名已經存在,成員方法已經存在

public class demo01objectmethodreference 

public static void main(string args) );

/*使用方法引用優化lambad表示式

物件是已經存在的methodrerobject

成員方法已經存在的printuppercasestring

可以使用物件名引用成員方法

*/demomethodrerobject obj2 =new demomethodrerobject(); //建立methodrerobject物件

printstring(obj2::printuppercasestring);

}}/*

定義乙個列印的函式式介面

*/@functionalinte***ce

public inte***ce printable1

public class demomethodrerobject

}

/*

通過類名引用靜態成員方法

類已經存在 靜態成員方法已經存在

*/

public class demostaticmethodreference 

public static void main(string args) );

system.out.println(method);

/*使用方法引用優化lambda表示式

*/int method1 = method(-20, math::abs);

system.out.println(method1);}}

public inte***ce calcable

/*

定義乙個子類

*/

public class man extends human

//定義乙個方法引數傳遞greetable介面

public void method(greetable g)

public void show());

/*使用super直接呼叫父類的成員方法

*/method(()->);

/*使用super引用父類成員方法

*/method(super::sayhello);

}public static void main(string args) }/*

定義父類

*/public class human }/*

定義見面的函式式介面

*/@functionalinte***ce

public inte***ce greetable

/*

通過this引用本類的成員方法

*/

public class husband 

//定義乙個結婚方法

public void marry(richable r)

//定義乙個開心方法

//呼叫結婚方法 方法引數是函式式介面 使用lambda

marry(()->);

/*使用引用優化lambda

*/marry(this::buyhouse);

}public static void main(string args) }/*

定義乙個富有的函式式介面

*/@functionalinte***ce

public inte***ce richable

/*

類的構造器 構造方法引用

*/

public class demo 

public static void main(string args) );

/*使用方法引用優化

*/printname("jackboy",person::new);}}

/*定義乙個建立person物件的函式式介面

*/@functionalinte***ce

public inte***ce personbuilder

public class person

public void setname(string name)

public person()

public person(string name)

/*

陣列的構造器引用

*/

public class demo02 

public static void main(string args) }/*

定義乙個建立陣列的函式式介面

*/@functionalinte***ce

public inte***ce arraybuilder

引用使用 C 引用的使用方法

c 中引用是指給乙個變數起別名,別名和變數指向同一塊的記憶體資料 引用的基本語法 引用的基本語法 資料型別 變數名 該資料型別的變數 int x 10 int a x 引用的注意事項 1.引用在定義時必須初始化 int a 錯誤 引用 a 變數需要初始值設定2.引用在初始化之後就無法修改 用引用做函...

java 方法引用

方法引用 方法引用只是給現有方法起了個別名。方法引用有四種形式 引用類中靜態方法 類名稱 靜態方法名稱 inte ce iutil public class test 引用某個物件方法 例項化物件 普通方法 inte ce iutil public class test 引用類中普通方法 類名稱 普...

Lambda 方法引用

public static void main string args system.out.println 初始化後的集合 system.out.println heros system.out.println 使用lambda的方式 篩選出 hp 100 damage 50 的英雄 filter...