Clases de Kotlin sin llaves

Me di count de que podemos crear classs en Kotlin sin llaves como a continuación.

//Example classFile.kt class Empty class SecondEmpty fun firstMethod() { } 

Mi pregunta es, ¿por qué necesitamos esa característica? ¿En qué situación podemos usar esto?

En el ejemplo anterior, he escrito un método llamado firstMethod() ¿cómo puedo llamarlo desde los otros objects?

Las classs vacías se han discutido en ¿Cuál es el propósito de la class vacía en Kotlin? ya.

Con respecto a su primer firstMethod : en Kotlin, hemos llamado funciones de alto nivel. Estos se pueden definir en cualquier file sin una class adjunta. Otro ejemplo para esto es main que se define en el nivel superior en la mayoría de los casos.

¿Cómo llamar a funciones de alto nivel?

Simplemente puede importar la function a otros files y llamarlos. Por ejemplo, si firstMethod se definió en com/x/Example.kt (package com.x), puede importar com.x.firstMethod en otros files de Kotlin y llamar a ese método.

Para Java, es importante saber que las funciones de nivel superior se comstackn en una class como miembros static . En cuanto al ejemplo anterior, puede llamar a com.x.ExampleKt.firstMethod desde Java.

  • ¿Cómo funcionan las funciones de extensión de Kotlin?
  • Prueba unitaria de la function de extensión de Kotlin en las classs de Android SDK
  • Obligatorio <Objeto> y encontrado <Objeto>?
  • No se puede acceder a EditText u otros componentes de la interfaz de usuario con Kotlin
  • La function Kotlin requiere nada, pero se define como un tipo diferente
  • Por qué los numbers que aceptan nulos no son para preservar la identidad
  • Clase Kotlin no encontrada
  • Extensiones en Kotlin
  • Android Studio 3 no puede build fragments de kotlin
  • Quiero agregar mi versión de kotlin al proyecto Gradel