2013-02-09 14 views
6

Ho una classe Kotlin che ha un oggetto di classe, ad es.Accesso all'oggetto classe Kotlin da Java

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

Se utilizzo questa classe da Java, come posso accedere a SomeValue all'interno dell'oggetto di classe? Se fosse una classe Java con una proprietà statica, userei solo Foo.SomeValue - ma non posso farlo qui.

IntellIJ indica che è possibile accedere a Foo.object.$instance, ma $instance non ha getSomeValue o qualcosa del genere. Se provo ad usare $ instance.SomeValue in ogni caso, quando costruire il messaggio di errore dice:

SomeValue ha accesso privato in Foo.object

sto usando Kotlin 0.5.1.

+0

Si potrebbe anche rendere '@ JvmStatic' permettendogli di accedere come membro statico della classe' Foo'. Vedi i documenti completi sull'interoperabilità da Java a Kotlin https://kotlinlang.org/docs/reference/java-to-kotlin-interop.html#static-methods-and-fields –

risposta

Problemi correlati