2011-10-17 16 views
14

Tengo problemas para acceder a los campos de un objeto scala desde java.Acceso a los campos del objeto scala desde java

Scala:

object TestObject { 
    val field = 5 
} 

Java:

public class JavaTest 
{ 
    public static void main(String[] args) 
    { 
    int i = TestObject.field; 
    } 
} 

error:

[error] JavaTest.java: cannot find symbol 
[error] symbol : variable field 
[error] location: class TestObject 
[error]  int i = TestObject.field; 
+0

para ver todos los miembros de Uso Público: 'javap -classpath '. P.ej. 'javap-classpath target/scala-2.9.1.final/classes TestObject' – dsg

Respuesta

16

campos Scala son variables privadas con un captador del mismo nombre para preservar la inmutabilidad.

public class JavaTest 
{ 
    public static void main(String[] args) 
    { 
    int i = TestObject.field(); 
    } 
} 
Cuestiones relacionadas