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)
相关推荐
张小潇几秒前
AOSP15的Zygote启动流程源码分析
android
做萤石二次开发的哈哈1 分钟前
萤石开放平台 萤石可编程设备 | 设备脚本自定义开发
开发语言·python·萤石云·萤石·萤石开放平台
毕设源码-钟学长3 分钟前
【开题答辩全过程】以 基于安卓的医疗健康查询系统为例,包含答辩的问题和答案
android
stevenzqzq10 分钟前
kotlin 协程的用法
kotlin
归真仙人11 分钟前
【UE】UMG安卓相关问题
android·ue5·游戏引擎·ue4·虚幻·unreal engine
无风听海14 分钟前
深入讲解 C# 中 string 如何支持 CultureInfo
开发语言·c#
yaoxin52112315 分钟前
291. Java Stream API - 从正则表达式创建 Stream
java·开发语言
sugarzhangnotes18 分钟前
MySQL 8.0升级中的字符集陷阱与解决方案
android·数据库·mysql
BHXDML20 分钟前
Java 设计模式详解
java·开发语言·设计模式