最近看到一種寫法:<T?extends?BaseEntity>T::getIdT為泛型類,getId為BaseEntity中的方法。T::getId,怎么就得到了id屬性,方法怎么也不用括號“getId()”。這種寫法叫做什么?
3 回答
已采納

onemoo
TA貢獻883條經(jīng)驗 獲得超454個贊
這種寫法叫?method reference。
method reference 最終會轉(zhuǎn)換為?functional interface 的一個實例。
實際上用到 method reference 的地方本來需要的是 functional interface 的實例(你可以看看是不是這樣)。 原本你需要自行實例化這個 interface 并且把這個 method 包裝在其中。
但通過這種 method reference 簡化寫法,編譯器自動幫你作了這樣的轉(zhuǎn)換。
添加回答
舉報
0/150
提交
取消