在Kotlin中调用Java静态方法的可能性
假设我们有一个Java静态方法:
//Java code public static void printFoo() { System.out.println("foo"); }
在Kotlin中可以调用这个方法吗?
是的你可以。 Java代码:
public class MyJavaClass { public static void printFoo() { System.out.println("foo"); } }
科特林代码:
fun main(args: Array) { MyJavaClass.printFoo() }
那么容易=)
是的 。 它在Java Interop中有记录
http://kotlinlang.org/docs/reference/java-interop.html
文档显示以下示例
if (Character.isLetter(a)) { // ... }
我所看到的唯一的警告是,他们不能通过一个实例传递,并像在Java中一样访问类的实例,但是这通常被认为是不好的做法。
0wl的答案通常是正确的。
我只是想补充说一些Java类映射到特殊的Kotlin类。 在这种情况下,您必须完全限定Java类才能工作。
例:
fun main(args: Array) { println(java.lang.Long.toHexString(123)) }