0

我想为 gatter 和 setter 模型声明一些变量类型。

我可以像在 java 中那样用简单干净的代码声明吗?

private String firstName;

public String getFirstName() {
    return firstName;
}

public void setFirstName(String firstName) {
    this.firstName = firstName;
}

因为在将其转换为 Kotlin 时,它看起来像:

private var firstName: String? = null

fun getfirstName(): String {
    return firstName
}

fun setfirstName(firstName: String) {
    this.firstName = firstName
}

什么是正确和最干净的方法?

4

2 回答 2

6

如果您不对getter / setter做额外的工作,最干净的方法就是将其定义为 kotlin 中的属性。例如:

var firstName: String? = null
于 2017-07-10T11:14:16.783 回答
0

尝试关注

联通:

 var <propertyName>[: <PropertyType>] [= <property_initializer>]
        [<getter>]
        [<setter>]

例子:

var allByDefault: Int? // error: explicit initializer required, default getter and setter implied
var initialized = 1 // has type Int, default getter and setter

只读属性声明的完整语法在两个方面与可变的不同:它以val代替 var 开头,并且不允许使用 setter:

val simple: Int? // has type Int, default getter, must be initialized in constructor
val inferredType = 1 // has type Int and a default getter
于 2017-07-12T10:55:28.897 回答