Kotlin 重命名生成的 getter 和 setter
Kotlin Renaming Generated Getters and Setters
有没有办法重命名 Kotlin 中的默认 getter 和 setter?我有一个在 snake_case
中命名的 属性,但我仍然希望在 camelCase
中命名 getter 和 setter。
我得到的最接近的是
private var property_name = Color.BLACK
private set
fun setPropertyName(c: Color) { property_name = c }
fun getPropertyName() = property_name
有没有办法在不隐藏 getter 和 setter 并定义新方法的情况下做到这一点?
在处理签名冲突部分有描述:https://kotlinlang.org/docs/reference/java-to-kotlin-interop.html#handling-signature-clashes-with-jvmname
val x: Int
@JvmName("getX_prop")
get() = 15
所以 @JvmName("getPropertyName") get
应该可以。
如果您只想更改名称而不是功能,您也可以像这样限定注释范围:
@get:JvmName("getPropertyName")
@set:JvmName("setPropertyName")
var property_name = Color.BLACK
有没有办法重命名 Kotlin 中的默认 getter 和 setter?我有一个在 snake_case
中命名的 属性,但我仍然希望在 camelCase
中命名 getter 和 setter。
我得到的最接近的是
private var property_name = Color.BLACK
private set
fun setPropertyName(c: Color) { property_name = c }
fun getPropertyName() = property_name
有没有办法在不隐藏 getter 和 setter 并定义新方法的情况下做到这一点?
在处理签名冲突部分有描述:https://kotlinlang.org/docs/reference/java-to-kotlin-interop.html#handling-signature-clashes-with-jvmname
val x: Int
@JvmName("getX_prop")
get() = 15
所以 @JvmName("getPropertyName") get
应该可以。
如果您只想更改名称而不是功能,您也可以像这样限定注释范围:
@get:JvmName("getPropertyName")
@set:JvmName("setPropertyName")
var property_name = Color.BLACK