Kotlin 伴生对象

Kotlin 伴生对象,由于在Kotlin中没有静态变量,因此它使用了伴生对象来替代Java中的静态变量的作用。伴生对象是在类加载时初始化,生命周期与该类的生命周期一致。在Kotlin中,定义伴生对象是通过“companion”关键字标识的,由于每个类中有且仅有一个伴生对象,因此也可以不指定伴生对象的名称,并且其他对象可以共享伴生对象。伴生对象的语法格式如下:

companion object 伴生对象名称(也可以不写) { 
    程序代码…… 
}

由于伴生对象可以指定名称,也可以不指定名称,因此在调用伴生对象时分两种情况,具体如下。

  • 有名称:调用方式为“类名.伴生对象名.成员名”“类名.成员名”
  • 无名称:调用方式为“类名.Companion.成员名”“类名.成员名”

接下来我们通过一个案例来调用伴生对象中的函数,具体代码如下所示。

package com.itheima.chapter04
class Company {
    companion object Factory {
        fun sayHello() {
            println(" 我是一个伴生对象,与类相生相伴")
        }
    }
}
fun main(args: Array<String>) {
   // 调用伴生对象中的函数
   Company.Factory.sayHello()  //第1 种调用方式:类名.伴生对象名.成员函数名
   Company.sayHello()          //第2 种调用方式:类名.成员函数名
}

运行结果:

我是一个伴生对象,与类相生相伴
我是一个伴生对象,与类相生相伴

在上述代码中,定义了一个伴生对象Factory,在main()函数中通过2种形式调用伴生对象中的sayHello()函数,输出运行结果。

酷客教程相关文章:

赞(0)

评论 抢沙发

评论前必须登录!