2013-08-27 36 views
4

我正在使用一个java类库,其中一个类有一个名为“type”的成员。如果我这样做:访问名称为“type”的java成员变量

class MyClass{ 
    public MyClass(){ 
    type = 5; 
    } 
    public int type; 
} 

然后java编译器编译它很好。但是,如果我尝试从斯卡拉访问:

val x = new MyClass() 
x.type = 10 

我得到这个消息:

标识预期,但“型”找到。

如何解决此问题?

我猜这已经出现,但我找不到相关的问题。

回答

7

可以通过使用反引号在阶做到这一点:

x.`type` = 10 

括在反引号任何字符串可以用作一个标识符,或者访问一个。

+1

...它可以让你写一些有趣的东西,比如'def \'(╯°□°)╯(┻━┻\'= {throw new RuntimeException}' –

+0

@ChristopherMartin这样疯狂的谎言...... – Shadowlands