我已经存在一个用Java编写的类(假设这个类叫X
),它包含一个名为type
的字段/成员。
我现在想编写一个Scala类/对象,它创建一个X
类型的对象并访问该对象的type
成员。
然而,由于type
是Scala中的关键字,因此无效。 Eclipse中的错误消息是:identifier expected but 'type' found.
问题:是否可以在不重命名的情况下访问该字段?
一个工作示例:
Java类:
public class X {
public final int type = 0;
}
Scala App:
object Playground extends App {
val x : X = new X();
System.out.println(x.type); // This does not work!
}
答案 0 :(得分:1)
您可以使用后退标记将保留字用作名称,例如type
。有关更多信息,请参阅以前的问题:
Is there a way to use "type" word as a variable name in Scala?
答案 1 :(得分:1)
使用反引号或定义一个gettter。
object Playground extends App {
val x : X = new X();
System.out.println(x.`type`)
}
或使用吸气剂,
public class X {
public int type = 0;
public int getType() {
return type;
}
}
object Playground extends App {
val x : X = new X();
System.out.println(x.getType());
}