0
点赞
收藏
分享

微信扫一扫

kotlin 类和对象


import java.util.*

// 类包含构造函数、初始化代码块、函数、属性、内部类、对象声明
// 非空属性必须在定义的时候初始化,kotlin提供了一种可以延迟初始化的方案,使用 lateinit 关键字描述属性
class People {
// 类的属性可以用关键字 var 声明为可变的,否则使用只读关键字 val 声明为不可变
var name: String = ""
var age: Int = 0

var addr: String = ""
get() = field.uppercase()
set(value) {
field = "G+$value"
}

constructor(name: String, age: Int, addr: String) {
this.name = name
this.age = age
this.addr = addr

println("constructor------")
}

constructor(name: String, age: Int) {
this.name = name
this.age = age
}

init {
println("init ------")
}

// 成员函数
fun foo() {
println("foo ---")
}

fun info() {
println("name: $name, age: $age, addr: $addr")
}
}

fun main() {
val p = People("adleytales", 19, "Beijing")
p.foo()

p.info()

p.name = "adley"
p.age = 18
p.info()
}


举报

相关推荐

0 条评论