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.

  • Kotlin || ¿No puedo agregar la biblioteca a Mi aplicación?
  • Android Kotlin Extension super calling
  • Extensiones en Kotlin
  • Extensión sintética Kotlin para ver
  • OnClick y TextView en Android Studio 3
  • Por qué los numbers que aceptan nulos no son para preservar la identidad
  • No se puede acceder a EditText u otros componentes de la interfaz de usuario con Kotlin
  • ¿Cuál es el equivalente de este código de java a kotlin
  • Clase Kotlin no encontrada
  • Android Studio 3 no puede build fragments de kotlin