在Java中实现Scala特征时,处理Scala特征中的私有字段

时间:2011-06-09 04:47:43

标签: java scala interop traits

在实现Scala特征时,必须实现特征的方法,并在Foo$class.class上简单地调用相应的静态方法。但我不确定如何处理特征中定义的私有字段。

也就是说,如果特征中有一个字段_something,如果我没有实现_something_$eq()_something(),编译器就会对我大喊大叫。我的假设是我必须在我的实现类中创建一个_something字段。

我只想确认这是处理此问题的正确方法。

1 个答案:

答案 0 :(得分:2)

是,在类

中创建私有字段

注意,您还需要调用Foo $ class模块的init方法

如果你想确切地知道你需要做什么,只需创建一个扩展Foo的Scala类,编译它,然后使用反编译器(jd-gui)来查看它是如何生成的。