Kotlin代码如何在内部执行?



我想知道在执行Kotlin程序时发生的一步一步的内部过程。我知道java的程序执行,但想知道Kotlin除此之外做什么?

还有没有别的

Kotlin/JVM被编译成Java字节码,它由JVM以与从Java或Clojure或Scala或Groovy或任何其他JVM语言编译的代码完全相同的方式运行。JVM不知道每个类是从什么语言编译的;它只是启动,加载你的主类,并执行它,根据需要加载其他类。

需要注意的一点是,Kotlin有自己的(小的)标准库。这也是Java字节码,除了编译后的代码和普通的Java标准库之外,JVM还必须可用:

  • 如果你使用kotlin程序启动你的应用程序,在将控制权交给JVM之前,将Kotlin运行时添加到类路径。
  • 如果你把你的代码打包到一个.jar文件中,Kotlin运行时库通常会包含在这个文件中。否则,您需要告诉JVM在哪里可以找到它(通过将它添加到类路径中)。

(当然,所有这些只适用于Kotlin/JVM;Kotlin/JS和Kotlin/Native的编译和运行方式完全不同)

最新更新