1、对象声明,通过这种方式创建一个单例对象。
object MySingleton{
fun function{
//方法代码块
}
}
调用方式:MySingleton.function(),类似像Java的静态方法
2、在类内部声明伴生对象
class OutClass {
companion object{
val value = 1
fun method() {
//方法代码块
}
}
}
伴生对象中的属性和方法可以直接通过类进行访问。
var value1 = OutClass.value
OutClass.method()
3、声明对象表达式,创建一个匿名对象
val myObj = object:ExtendClassName {
val value = ""
fun method() {
//方法代码块
}
}
ExtendClassName为匿名对象继承的类或接口名。