Kotlin代码是如何在Android应用程序中执行的,它与Java有何不同?
我正在学习Kotlin,希望了解编译后的代码是如何执行的,以及它与Android的Java代码执行有何不同 我还想知道为什么我们要编写Kotlin代码是如何在Android应用程序中执行的,它与Java有何不同?,java,android,kotlin,Java,Android,Kotlin,我正在学习Kotlin,希望了解编译后的代码是如何执行的,以及它与Android的Java代码执行有何不同 我还想知道为什么我们要编写MainActivity::class.java(class.java)来引用类文件 谢谢大家! 基本上Kotlin被编译成与Java相同的字节码 你可以在网上找到Kotlin教程。但除了“这是jvm字节码”之外,他们从来没有对生成的字节码进行过太多的解释。所以我们可以想象,Java编译的字节码并没有太大的区别 我可以想象,一个不同之处是Kotlin使用注释来扩充
MainActivity::class.java
(class.java
)来引用类文件
谢谢大家! 基本上Kotlin被编译成与Java相同的字节码 你可以在网上找到Kotlin教程。但除了“这是jvm字节码”之外,他们从来没有对生成的字节码进行过太多的解释。所以我们可以想象,Java编译的字节码并没有太大的区别 我可以想象,一个不同之处是Kotlin使用注释来扩充生成的字节码,从而启用Kotlin特定的语言特性。这可能也是Kotlin拥有自己的KClass类型的原因。它可能能够读取特定于kotlin的类注释。实际上,有两种类型表示一个类(KClass和class)。旧的学校类类型实例是通过Class.java引用的 还请注意,Kotlin可以编译为JVM字节码以外的其他语言。在其他情况下,将没有类引用,但仍然有一个KClass引用 教程的良好起点是 它与Android的Java代码执行有何不同 事实并非如此。Android不执行Java代码或Kotlin代码。取而代之的是以下链条:
.class
文件中发出JVM字节码dx
程序),并将其打包成.apk
.apk
文件时,将其包含的Dalvik字节码转换为机器代码你没有。编写它是为了引用与
MainActivity
类对应的Class
对象 由于缺乏先前的研究而被否决。