快捷导航

JAVA 类名::方法名的原理?

最近看到一种写法:T::getIdT为泛型类,getId为BaseEntity中的方法。T::getId,怎么就得到了id属性,方法怎么也不用括号“getId()”。这种写法叫做什么?

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员2

这种写法叫method reference。
method reference 最终会转换为functional interface 的一个实例。
实际上用到 method reference 的地方本来需要的是 functional interface 的实例(你可以看看是不是这样)。 原本你需要自行实例化这个 interface 并且把这个 method 包装在其中。
但通过这种 method reference 简化写法,编译器自动帮你作了这样的转换。
回复

使用道具 举报

获取id属性吧  没有调用方法吧 要不然 编译就报错了啊
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP