方法引用属性setter

我怎样才能得到方法参考财产二传手,而不使用kotlin反映?

基本上,如果我用java的方式写我的代码,这是非常简单的

fun setValue(i: Int) = Unit val a: (Int) -> Unit = this::setValue 

但是,对于var value: Int我越来越

 var value = 1 val a: KMutableProperty0<Int> = this::value 

使用this::value.setter来获取setter引用。

this::value是一个属性引用。 它返回一个KMutableProperty 。 为了得到setter,你将需要KMutablePropertysetter字段。 所以你需要这个:

 class C { var field: Int = 1 fun getFieldSetter(): (Int) -> Unit{ return this::field.setter } }