【发布时间】:2018-01-31 22:12:55
【问题描述】:
我想在超类中定义toString(),以便它检测到类实例是单例(object)并打印其名称。
在 Kotlin 中可以吗?
【问题讨论】:
-
答案有帮助吗?
标签: object reflection kotlin singleton tostring
我想在超类中定义toString(),以便它检测到类实例是单例(object)并打印其名称。
在 Kotlin 中可以吗?
【问题讨论】:
标签: object reflection kotlin singleton tostring
KClass 的以下 objectInstance 属性可能会有所帮助:
/**
* 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
【讨论】: