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)
相关推荐
似霰1 分钟前
Unix Domain Socket —— UDP 篇
android·unix
马士兵教育10 分钟前
程序员简历如何编写才能凸显出差异化,才能拿到更多面试机会?
开发语言·后端·面试·职场和发展·架构
jz_ddk1 小时前
[指南] Python循环语句完全指南
开发语言·python·continue·循环·for·while·break
chilavert3181 小时前
技术演进中的开发沉思-368:锁机制(中)
java·开发语言·jvm
大黄说说1 小时前
MySQL数据库运维管理基础知识:从安装到日常维护的完整指南
开发语言
HAPPY酷1 小时前
C++ 多线程实战三板斧
java·开发语言·c++·技术美术
独自破碎E1 小时前
BISHI54货物堆放
android·java·开发语言
冬奇Lab2 小时前
属性系统与系统配置管理:Android的全局配置中心
android·源码阅读
zjttsh2 小时前
MySQL加减间隔时间函数DATE_ADD和DATE_SUB的详解
android·数据库·mysql
顾北123 小时前
SpringCloud 系列 04:Gateway 断言 / 过滤器 / 限流 一站式落地指南
java·开发语言·数据库