You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin如何选择特定实例重载方法的绑定可调用引用

要选择指定的重载绑定实例方法引用,只需要显式声明可调用引用对应的函数类型即可,Kotlin编译器会自动匹配与声明的函数类型签名一致的重载方法。

示例1:选择单参数重载

对应签名为 getItem (String) -> Item 的重载,声明代码如下:

val f: (String) -> Item = a::getItem

示例2:选择双参数重载

对应签名为 getItem (String, Metrics) -> Item 的重载,声明代码如下:

val f: (String, Metrics) -> Item = a::getItem

上下文自动匹配场景

如果将绑定实例的方法引用作为参数传入高阶函数,只要高阶函数的入参函数类型明确,编译器可自动完成重载匹配,无需额外显式声明类型:

// 高阶函数的入参明确要求单参数函数类型
fun loadResource(loader: (String) -> Item) {
    val res = loader("res_id")
}

// 直接传入方法引用即可,编译器自动匹配单参数重载
loadResource(a::getItem)

内容的提问来源于stack exchange,提问作者Rocky Li

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:15:01