1、伴生对象companion object
class Demo(var height:Int, var wieth:Int) { companion object { public var temp:String = "111" fun getMax(){} } }
这样定义的方法和属性,就会类似于java中的静态方法和静态属性,可以直接通过类名直接调用,如:Demo.temp;
备注:如果在java文件中调用该静态属性和方法,需要另加相关注解方可以调用,如:
public open class dd(var height:Int, var wieth:Int): zi("") { companion object { @JvmField public var v:String = "111" @JvmStatic fun getMax(){} } }
每个类可以对应一个伴生对象,伴生对象的成员全局独一份