¿Cómo determinar si un object es henetworkingado de cierta class en Kotlin?

En la testing:

if(v is BaseModel) 

afirmará verdadero si v es una instancia directa de tipo BaseModel, pero afirmará falsa si v no es una instancia directa de tipo BaseModel, sino que se henetworkinga de BaseModel. Sería bueno si Kotlin tiene una palabra key que afirmará verdadero si hay una palabra key 'es de' tal que la testing

 if(v is from BaseModel) 

afirmará verdadero si la class v se henetworkinga de BaseModel.

Pero, ¿cómo lo resuelve Kotlin actualmente?

Como dijo @Krzysztof Kozmic, el ejemplo que dio hace exactamente lo que está pidiendo. Solo para dar algunos ejemplos más:

 // Built in types val x: Int = 25 println(x is Number) // true // Custom types open class A open class B : A() open class C : B() println(B() is A) // true println(C() is A) // true 

Supongo que lo que estás preguntando es cómo determinar si v henetworkinga directamente BaseModel en lugar de a través de una class base intermedia.

Si ese es el caso, entonces esto hará:

 v.javaClass.superclass == BaseModel::class.java 
  • ¿Cuáles son las reglas de inferencia de punto y coma en Kotlin?
  • Cuándo usar los methods de extensión?
  • romper o regresar de cuando expresiones
  • MediaPlayer devuelve -1 para getDuration ()
  • Cómo get la date y hora local actual en Kotlin
  • No puedo build proyecto con Android Studio 2.3 y Gradle
  • Escáner de código de barras 2D portátil Android: cómo acceder al escáner y leer datos
  • ¿Cómo implementar el patrón Builder en Kotlin?
  • Acerca de Kotlin y funciones
  • ¿Cuál es la solución preferida para Kotlin koan "Partition" y por qué?
  • @Antes de que la anotación sea ignorada por kotlin en la testing de expreso?