您的位置:首页 > 其它

Kotlin基础教程-对象表达式和声明

2017-06-06 11:56 85 查看
对象表达式和声明

对象表达式

open class E(x: Int) {
public open val y: Int = x
}

val ab = object : E(1){
override val y = 14
}


代码扩展了类E的成员属性,增加了
y
属性。

对象声明

object Singleton {
val name = "doctorq"
}


声明对象不能作为作为赋值语句赋值给变量。

伴随对象

class MyClass {
companion object Factory {
fun create(): MyClass = MyClass()
}
}

fun main(args: Array<String>) {
val instance = MyClass.create()
}


其中对象名
Factory
可以省略。

伴随对象不是静态传递的,是根据运行时动态传递的。

对象表达式和声明的区别

对象表达式在使用处立即初始化

对象声明为lazy的,在第一次调用时初始化

伴随对象是在对应类加载时初始化的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: