Kotlin – equivalencia a SomeClass.class para objects?

Intento get estáticamente el nombre de un object (Para usos de logging)

La equivalencia para:

public class SomeClass { private static final String TAG = SomeClass.class.getSimpleName() } 

En Kotlin:

 object SomeObject { private const val TAG = ? } 

Prueba esto

 SomeClass::class.simpleName 

Si lo está usando en una aplicación de Android, le sugiero que lo haga de la siguiente manera: (packageName: className)

 object SomeObject { private val TAG = "${SomeObject::class.java.`package`.name}:${SomeObject::class.simpleName}" } 

Al hacerlo, puede asegurarse de que el nombre de la label para cualquier otra class no sea duplicado. Es realmente útil si está creando un fragment de código / lib que alguien puede usar. De lo contrario, tener el mismo nombre de label puede ocasionar errores de time de ejecución.

  • Cambie Flowable <List <Obj1 >> a Flowable <List <Obj2 >> en la habitación
  • ¿Cómo comstackr y usar el código de Kotlin en time de ejecución?
  • Cómo convertir el valor de char a ascii en el lenguaje kotlin
  • Mapa de Kotlin usando operadores
  • Configurar enlaces de Guice en Kotlin
  • Enfrentando problemas con kotlin Dagger 2
  • Android Studio muestra la advertencia de dependencia de Kotlin después de la segunda compilation
  • Dibujando líneas desde ViewModel TornadoFX
  • Asignación no permitida en la expresión while?
  • ¿Cómo ejecutar las testings de Spek desde la command-line?
  • Dagger2 inyecta un presentador en un error de actividad de Kotlin