簡體   English   中英

可以在Kotlin中調用Java靜態方法

[英]Possibility to call a Java static method in Kotlin

假設我們有一個Java靜態方法:

//Java code
public static void printFoo() {
    System.out.println("foo");
}

可以在Kotlin中調用該方法嗎?

是的你可以。 Java代碼:

public class MyJavaClass {
    public static void printFoo() {
        System.out.println("foo");
    }
}

Kotlin代碼:

fun main(args: Array<String>) {
    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<String>) {
    println(java.lang.Long.toHexString(123))
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM