Kotlin之object与companion object的区别

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/linzhefeng89/article/details/100974291

Kotlin之object与companion object的区别

object对象声明

将一个kotlin的类使用object进行声明,那么这个类里面的所有的方法和变量都是静态的,我们定义一个静态类DemoObject代码如下 :

object DemoObject {
      private val demoVal = "demoVal"
      fun demoFun():String{
           return demoVal
      }
}

我们就可以直接在其它的类中使用以下的方式来调用我们的demoFun方法:

DemoObject .demoFun()

companion object

修饰为伴生对象,伴生对象在类中只能存在一个,类似于java中的静态方法 Java 中使用类访问静态成员,静态方法

class  DemoObject {
   companion object {
    private val demoVal = "demoVal"

    fun demoFun():String{
           return demoVal
      }
  }
}

我们就可以直接在其它的类中使用以下的方式来调用我们的demoFun方法:

DemoObject .demoFun()

猜你喜欢

转载自blog.csdn.net/linzhefeng89/article/details/100974291