Я думаю, это будет зависеть от того, как вы получите ссылку на это свойство, но если вы сделаете это так:
class A(var x: Int = 0)
val prop: KMutableProperty1<A, Any> = A::x as KMutableProperty1<A, Any>
Тогда эта цепочка попыток приведения может дать вам экземпляр KClass
:
val kclass = (prop as? MutablePropertyReference1)?.owner as? KClass<*>
println(kclass) // class A
Опять же, это не будет работать почти во всех случаях, поскольку являются другими реализациями интерфейсов, которые эти свойства фактически возвращают, поэтому приведение может завершиться неудачей.