2011-10-17 75 views
14

我无法从java访问scala对象的字段。从java访问scala对象字段

斯卡拉:

object TestObject { 
    val field = 5 
} 

的Java:

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

错误:

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

要查看所有公共成员使用:'的javap -classpath '。例如。 'javap -classpath target/scala-2.9.1.final/classes TestObject' – dsg

回答

16

Scala的字段名称相同的吸气私有变量,以保持不变性。

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