Kotlin重命名生成的Getters和Setters

有什么方法可以重新命名Kotlin中的默认获取器和设置器? 我有一个名为snake_case的属性,但我仍然希望gettersettercamelCase命名。

我得到的最接近的是类似的东西

 private var property_name = Color.BLACK private set fun setPropertyName(c: Color) { property_name = c } fun getPropertyName() = property_name 

有没有办法做到这一点,而不隐藏获取和设置和定义新的方法?

2 Solutions collect form web for “Kotlin重命名生成的Getters和Setters”

它在处理签名冲突一节中有描述: 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 language will be the best programming language for Android.