¿Integración de Kotlin en Java Code?

Ejemplo: En el código C es posible llamar partes del código del ensamblador, como:

int main() { //... stuff __asm { lea ebx, hal mov ecx, [ebx]hal.same_name ; mov esi, [ebx].weasel ; } // .. further stuff return 0; } 

¿Es posible la integración de código para el código de Kotlin en los files Java (* .java)?

(¡No hablo sobre JNI o ​​C / C ++ en Java!) Me gustaría extender el código fuente Java (AndroidStudio-) ya existente con el lenguaje Kotlin.

 //.. this is *.java file public class MyAlreadyExistingJavaClass { private int memberVar; public MyAlreadyExistingJavaClass() { } // this is Kotlin within *.java file // extend this Java file with this constuctor in KOTLIN ? // would make above default constructor unneccessary. class MyAlreadyExistingJavaClass(number: Int = 0) { memberVar = number; } } 

Java no proporciona ninguna syntax para include fragments de código en Kotlin o cualquier otro idioma en un file Java. Sin embargo, esto no es necesario para realizar su tarea. Simplemente puede definir el constructor que necesita como una function de fábrica en un file separado de Kotlin:

 fun MyAlreadyExistingJavaClass() = MyAlreadyExistingJavaClass(0) 

Si desea definir un nuevo método, en lugar de un constructor, puede usar funciones de extensión .

Soy un desarrollador de Groovy, no un desarrollador de Kotlin, pero parece que Kotlin proporciona una API de scripting . Se puede llamar a Groovy, JavaScript y JRuby desde una class Java utilizando la API Java ScriptEngine estándar. Querría algo así para aproximar Kotlin alignment dentro de una class de Java. Digo aproximada porque no se ejecutaría directamente como ese ejemplo de ensamblaje, pero se pasaría a través de una implementación de Kotlin compatible con ScriptEngine.

  • Referencia no resuelta: kotlinx
  • Extensiones en Kotlin
  • Comprobación de conectividad no funciona en Android Oreo Kotlin
  • NullPointerException en android.support.v4.app.NotificationCompatBase $ Action.getIcon ()
  • Base de datos de android de Kotlin: no se puede convertir java.lang.String en android.database.Cursor
  • Usando Anko getting type Error de falta de correspondencia requerido AnkoContext <ViewGroup> Found AnkoContext <Context>
  • Métodos estáticos como en la aplicación de Android con kotlin
  • La igualdad de identidad para los arguments de los types Int e Int está en desuso
  • Cómo modificar la variable de instancia de AsyncTask por separado
  • Prueba unitaria de la function de extensión de Kotlin en las classs de Android SDK
  • Kotlin DialogFragment editText editable always null