How to get KClass of an object in Kotlin instead of getClass() from Java?
Hello! I'm transitioning from Java to Kotlin and encountered a problem. In Java, I often used getClass() to get runtime class information about an object. For example:
Object obj = "Hello";\nClass<?> clazz = obj.getClass(); // Gets java.lang.Class\nSystem.out.println(clazz.getName()); // Prints java.lang.String\n\n\nIn Kotlin, I know there's KClass — the equivalent of java.lang.Class, but how do I get it? I tried this:
val obj: Any = "Hello"\nval clazz = obj::class // Error: "This expression is not a class reference"\n\n\nOr this:
\n\nval clazz = obj.javaClass // Works, but returns java.lang.Class, not KClass\n\n\nI need exactly
No answers yet.
Log in to leave an answer