Kotlin 是一个变成语言的同时也有它自己的语言结构来申请内存以及为端用户产生高质量的输出。以下是 Kotlin 编译器会差异对待的不同场景,当然不论何时 Kotlin 的目标都与其他语言不同,如 Java 和 JavaScript。

    Kotlin 编译器生成可以在 JVM 上运行的字节码,这与 Java 的 .class 完全相同。任何时候这两种字节码都可以互相交互,这也是基于 Java 的 Kotlin 彼此可以互相调用的原因。

    语言结构 - 图1

    而当 Kotlin 指定生成目标为 JavaScript 的时候,Kotlin 编译器会将 .kt 文件转换为 ES5.1 标准的 JavaScript 代码。Kotlin 编译器有能力生成跨平台兼容的代码(基于 LLVM)。