kotlin-关键字

343 阅读1分钟

如果用了代码中使用了 as, in等关键字,需要用'' 区分。下面是几种关键字的说明

1.object

单例对象声明,线程安全

2.companion

类内部的对象声明可以用 companion 关键字标记:

class MyClass {
    companion object Factory {
        fun create(): MyClass = MyClass()
    }
}
该伴生对象的成员可通过只使用类名作为限定符来调用:

val instance = MyClass.create()

可以省略伴生对象的名称,在这种情况下将使用名称 Companion:

class MyClass {
    companion object { }
}

val x = MyClass.Companion

3.operator

如:String::plus

4.reified

用来定义参数类型

5.internal

如果你不指定任何可见性修饰符,默认为 public,这意味着你的声明将随处可见; 如果你声明为 private,它只会在声明它的文件内可见; 如果你声明为 internal,它会在相同模块内随处可见; protected 不适用于顶层声明。

6. in 相当于java的 super( 父类) ,out相当于java的 extend(子类)

fun copy(from: Array<out Any>, to: Array<Any>) { …… }

Array<? extends Object>
fun fill(dest: Array<in String>, value: String) { …… }
Array<? super String>

7.vararg 数组参数