dsg
dsg

Reputation: 13004

Accessing scala object fields from java

I'm having trouble accessing the fields of a scala object from 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;

Upvotes: 15

Views: 2010

Answers (1)

dsg
dsg

Reputation: 13004

Scala fields are private variables with a getter of the same name to preserve immutability.

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

Upvotes: 17

Related Questions