Kotlin 中注解 @JvmOverloads 的作用

@JvmOverloads 注解的作用就是:在有默认参数值的方法加上 @JvmOverloads 注解,则 Kotlin 就会暴露多个重载方法。

例如,没有加注解,默认参数没有起到任何作用。

kotlin 复制代码
fun f(a: String, b: Int = 0, c: String = "abc") {

}

那相当于在 Java 中定义:

java 复制代码
void f(String a, int b, String c) {

}

如果加上注解 @JvmOverloads,默认参数起到作用:

kotlin 复制代码
fun f(a: String, b: Int = 0, c: String = "abc") {

}

// 相当于 Java 中
void f(String a)
void f(String a, int b)
void f(String a, int b, String c)
相关推荐
倒流时光三十年17 分钟前
Java 内存模型(JMM)通俗解释
java·开发语言
安卓修改大师38 分钟前
安卓修改大师实战:从反编译到定制的完整APK修改指南
android
码兄科技44 分钟前
Java AI智能体开发实战:从零构建企业级智能应用指南
java·开发语言·人工智能
zh路西法1 小时前
【现代控制理论与卡尔曼滤波】从状态空间到Python仿真实现
开发语言·python
Evand J1 小时前
【论文复现】MATLAB例程,存在测距误差的WSN无锚点分布式自定位,《WSN中存在测距误差的无锚点分布式自定位方法》
开发语言·分布式·matlab·定位·导航·wsn
techdashen1 小时前
kTLS 进入 rustls 组织:把 TLS 的数据面交给内核
开发语言·php
Lhappy嘻嘻2 小时前
Java 并发编程(六)|并发进阶高频:CAS、锁升级
java·开发语言
techdashen2 小时前
Arborium:把 tree-sitter 语法高亮打包成 Rust 文档生态的基础设施
开发语言·后端·rust
柚鸥ASO优化2 小时前
安卓APP推广的“降本增效”密码:守好商店内,打好商店外
android·aso优化
会周易的程序员2 小时前
microLog 后端开发指南
开发语言·c++·物联网·设计模式·日志·iot·aiot