android kotlin类和对象(二)-属性和字段

来源:互联网 发布:时尚芭莎 知乎 编辑:程序博客网 时间:2024/06/05 18:06

Kotlin的类可以有属性。 属性可以用关键字var 声明为可变的,否则使用只读关键字val。
要使用一个属性,只要用名称引用它即可,就像 Java 中的字段:

fun copyAddress(address: Address): Address {    val result = Address() // Kotlin 中没有“new”关键字    result.name = address.name // 将调用访问器    result.street = address.street    // ……    return result}

幕后字段
Kotlin 中类不能有字段。然而,当使用自定义访问器时,有时有一个幕后字段(backing field)有时是必要的。为此 Kotlin 提供 一个自动幕后字段,它可通过使用 field 标识符访问。

var counter = 0 // 此初始器值直接写入到幕后字段  set(value) {    if (value >= 0)      field = value  }

编译期常量
已知值的属性可以使用 const 修饰符标记为 编译期常量。 这些属性需要满足以下要求:
位于顶层或者是 object 的一个成员
用 String 或原生类型 值初始化
没有自定义 getter

const val SUBSYSTEM_DEPRECATED: String = "This subsystem is deprecated"@Deprecated(SUBSYSTEM_DEPRECATED) fun foo() { …… }
原创粉丝点击