有没有一种方法可以从普通的Kotlin类中识别出一个Kotlin数据类?

19

有没有一种方式可以从普通的 Kotlin 类中识别出 Kotlin 数据类?例如使用反射?

2个回答

21

从1.1版本开始,该类上有一个isData属性。

MyDataClass::class.isData

6
自 Kotlin 1.1 起,在 KClass 上使用 isData 属性。(文档)
在 Kotlin 1.1 之前,您可以尝试使用一些启发式方法,例如检查它是否包含以下方法:
- public final copy - public final component{N} - public static copy$default
请注意,这些实现细节将来可能会更改。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接