转:kotlin中object和companion object关键字_鸿鹄的博客-CSDN博客_companion object
1.2 companion object
companion object 修饰为伴生对象,伴生对象在类中只能存在一个,类似于java中的静态方法 Java 中使用类访问静态成员,静态方法。
companion object {
private val TAG = "DemoManager"
fun b() {
Log.e(TAG,"此时 companion objec t表示 伴生对象")
}
}
1.2.1 调运
kotlin
fun init(){
b()
}
java 中调用
DemoManager.Companion.b();
1.3 在companion object中如何调用外部的成员变量
在java中我们写一个静态方法,如果需要调用成员变量,是无法调用到的,java中静态方法调用成员变量,要求成员变量必须是静态的
1.3.1 解决
companion object {
private val MY_TAG = "DemoManager"
fun b() {
Log.e(MY_TAG,"此时 companion objec t表示 伴生对象")
}
}
将所引用的成员变量也修饰静态的,这样就可以引用到了