一、属性的基础使用
一个类中是可以存在属性的,一个属性可以用
val
或者var
修饰。
- 用
val
修饰符修饰的属性是只读的,即不能被修改,只可使用- 用
var
修饰符修饰的属性是可读写的,即能用能改
例:
class Mime{
val id : String = "123"
var name : String? = "kotlin"
var age : Int? = 22
var sex : String? = "男"
var weight : Float = 120.3f
private var test : String = ""
get() = "123"
set(value){field = value}
}
fun main(args: Array<String>) {
val mime = Mime()
println("id = ${mime.id} \t name = ${mime.name} \t age = ${mime.age}
\t sex = ${mime.sex} \t weight = ${mime.weight}")
}
输出结果为:
id = 123 name = kotlin age = 22 sex =男 weight = 120.3
注意:
`val`关键字为只读,`var`为可读写。这里举例说明:
例: 还是上面的例子
// id是只读的,其他的属性是可读写的
mime.id = "123456" // 编辑器直接会报错
mime.name = "kotlin2" // 可以,因为是var修饰的
...
二、Getter()与Setter()
getter()
对应Java
中的get()函数
,setter()
对应Java
中的set()函数
。不过注意的是,不存在Getter()与Setter()
的,这只是Kotlin
中的叫法而已,真是的写法,还是用get()、set()
。可以看下面的例子。- 在
Kotlin
中,普通的类中一般是不提供getter()
与setter()
函数的,因为在普通的类中几乎用不到,这一点和Java
是相同的,但是Java
中在定义纯粹的数据类时,会用到get()
与set()
函数,但是Kotlin
专门