一、Java调用Kotlin的方法
(一)调用 Kotlin 顶层函数
1、文件名+Kt 调用函数
在 Kotlin 中,如果定义了一个顶层函数,它将被编译成一个名为“文件名+Kt”的类,并且该函数将成为该类的静态方法。
因此,在 Java 代码中,可以通过该类名和函数名调用该函数。以下是一个简单的示例:
在 Kotlin 中:
// 文件名:MyKotlinFile.kt
fun sayHello(name: String) {
println("Hello, $name!")
}
在 Java 中:
public class Main {
public static void main(String[] args) {
MyKotlinFileKt.sayHello("danke");
}
}
2、自定义文件名调用函数
默认情况下,Kotlin 编译器会将顶层函数编译为 Kotlin 文件名加上 Kt
后缀的静态方法。但是,可以使用 @file:JvmName
注释指定生成的 Java 类的名称。
在 Kotlin 中,将 @file:JvmName
注释放置在文件的开头,并将要使用的 Java 类名称作为参数传递。
例如,如果希望将 Kotlin 文件 MyKotlinFile.kt
编译为 Java 类 MyDifferentNameFile
,则可以在 Kotlin 文件的开头添加以下行:
// 文件名:MyKotlinFile.kt
@file:JvmName("MyDifferentNameFile")
package com.example
fun sayHello(name: String) {
println("Hello, $name!")
}
在 Java 中,我们可以使用以下代码调用此函数:
package com.example;
public class Main {