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

Kotlin中@JvmStatic仅适用于JVM?多平台场景能否使用?

关于Kotlin多平台中@JvmStatic注解的使用问题
  • 核心结论:在类的伴生对象中使用@JvmStatic注解,完全可以在多平台库中编译,非JVM平台会直接忽略该注解,不会产生编译错误或功能影响。
  • 注解本质:@JvmStatic是kotlin.jvm包下的JVM平台专属注解,作用是让Kotlin编译器在JVM字节码中把伴生对象的方法生成为类的静态方法,方便Java代码调用。
  • 非JVM平台的处理逻辑:对于JS、Native等非JVM平台,Kotlin编译器会识别这是JVM专属注解,直接跳过处理,既不会报错,也不会改变伴生对象方法在非JVM平台的调用方式——非JVM平台依然通过伴生对象实例访问这些方法,和没有加注解时完全一致。
  • 实践建议:如果你的多平台库需要兼顾JVM平台的Java调用场景,直接在伴生对象方法上添加@JvmStatic即可;如果不需要支持Java调用,不加也不会影响跨平台逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 04:48:09