2013-02-09 3 views
6

클래스 객체가있는 Kotlin 클래스가 있습니다.Java에서 Kotlin 클래스 객체에 액세스

public class Foo { 
    public class object { 
     public val SomeValue : Int = 0 
    } 
} 

Java에서이 클래스를 사용하는 경우 클래스 개체의 SomeValue에 어떻게 액세스합니까? 정적 속성을 가진 Java 클래스 인 경우 Foo.SomeValue를 사용합니다. 그러나 여기에서는 수행 할 수 없습니다.

IntellIJ는 Foo.object.$instance에 액세스 할 수 있지만, $instance에는 getSomeValue 또는 이와 유사한 것이 없음을 보여줍니다. 어쨌든 $ instance.SomeValue를 사용하려고하면, 나는 오류 메시지를 빌드 할 때 말한다 :

someValue와 내가 코 틀린 0.5.1을 사용하고

Foo.object

민간 액세스 할 수 있습니다.

+0

또한 '@ JvmStatic'으로 설정하여 클래스'Foo'의 정적 멤버로 액세스 할 수 있습니다. Java에서 Kotlin까지의 상호 운용성에 대한 전체 문서보기 https://kotlinlang.org/docs/reference/java-to-kotlin-interop.html#static-methods-and-fields –

답변