美文网首页
The following declarations have

The following declarations have

作者: 苍风忍 | 来源:发表于2023-07-25 08:33 被阅读0次

kotlin 中定义了一个DataClass, 成员变量的名字一样,只是大小写不同:
data class Trade(
val t: Long,
val T: Long
)

编译时报错:
The following declarations have the same JVM signature

解决办法:
1.重命名避免冲突
data class Trade(
val tValue: Long,
val TValue: Long
)

  1. 如果想保持属性名称为t和T,可以使用@JvmField注解,指示Kotlin编译器生成Java字段而不是getter和setter方法,从而解决了方法签名冲突。然而,请注意使用此注解会将属性直接公开为公共字段,绕过封装。
    data class Trade(
    @JvmField val t: Long,
    @JvmField val T: Long
    )

相关文章

网友评论

      本文标题:The following declarations have

      本文链接:https://www.haomeiwen.com/subject/tzocpdtx.html