在用 Kotlin 编写的 Android 应用中,ViewMoel 中的 LiveData 属性可以使用支持字段技术进行封装,如下所示:
private val _score = MutableLiveData<Int>()
val score: LiveData<Int>
get() = _score
如何在 Java 中翻译它以获得相同级别的封装?
在用 Kotlin 编写的 Android 应用中,ViewMoel 中的 LiveData 属性可以使用支持字段技术进行封装,如下所示:
private val _score = MutableLiveData<Int>()
val score: LiveData<Int>
get() = _score
如何在 Java 中翻译它以获得相同级别的封装?
这是一个普通的getter方法,这是转换后的java代码
private final MutableLiveData<Integer> _score = new MutableLiveData<Integer>();
@NotNull
public final LiveData<Integer> getScore() {
return this._score;
}
这是获取Java代码表单kotlin的步骤
在安卓工作室
工具 -> kotlin -> 显示 kotlin 字节码 -> 反编译
在Java中,类只有字段和函数,所以你可以用这样的getter创建一个私有字段来实现结果。
private final MutableLiveData<Int> score = new MutableLiveData<>();
public final LiveData<Int> getScore(){
return score;
}