我想在超类中定义toString()
,以便它检测到类实例是单例(object
)并打印其名称。
Kotlin有可能吗?
答案 0 :(得分:2)
objectInstance
的以下KClass
属性可能会有所帮助:
/**
* The instance of the object declaration, or `null` if this class is not an object declaration.
*/
public val objectInstance: T?
以下是一个例子:
object Singleton
println(Singleton::class.objectInstance) // xx.Singleton@77a57272
println(""::class.objectInstance) //null