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)
相关推荐
cool3200几秒前
Kubernetes集群节点扩容实战-kubeasz
java·开发语言·kubernetes
dora3 分钟前
Android弱网优化 —— 都要卫星互联网了,谁给我限速体验2G
android·性能优化
liulilittle4 分钟前
OPENPPP2 CTCP 协议栈 + 内置 TC Hairpin NAT 内核态程序
c语言·开发语言·网络·c++·信息与通信·通信
用户3171478611338 分钟前
仿今日头条 APP 开发实战:RecyclerView 核心玩法 + 全布局体系深度拆解
android
用户41659673693559 分钟前
在 Jetpack Compose 中实现拼音与四线三格的精准对齐
android
羚羊角uou18 分钟前
【Linux网络】select详解
linux·服务器·开发语言·网络·c++
C++ 老炮儿的技术栈18 分钟前
c++ this 指针的用途
c语言·开发语言·c++·windows·qt·github
watersink18 分钟前
第7章 软件架构设计
java·开发语言
jinanwuhuaguo22 分钟前
Claude Code 深度学习与场景应用完全指南:从入门到精通的全景实战
开发语言·人工智能·深度学习
Ricky_Theseus24 分钟前
C++全局变量、局部变量、静态全局变量、静态局部变量的区别
开发语言·c++