``` fun isParentHasType(type: Class<*>, valu...
# india
m
Copy code
fun isParentHasType(type: Class<*>, value: Any): Any {
    val assignableFrom = type::class.java.isAssignableFrom(value::class.java)
    return assignableFrom
}


open class A

open class B : A()

open class C : B()

fun main() {
    val c = C()
    val parentOfType = isParentHasType(A::class.java, c)
    val parentHasType2 = isParentHasType(c::class.java, A())
    println(parentHasType2)
    println(parentOfType)
}
In both these cases I get false returned from isParentHasType function. What’s wrong with my code?
a
your
isParentHasType
doesn't look correct. you are taking
Class<*>
as parameter type and then using class type of that variable so essentially calling
isAssignableFrom
on
Class<Class<*>>
think you want this
Copy code
fun isParentHasType(type: Class<*>, value: Any): Any {
    val assignableFrom = type.isAssignableFrom(value::class.java)
    return assignableFrom
}