2011-06-09 32 views
0

實現Scala特性時,必須實現特質的方法並簡單地調用Foo$class.class上相應的靜態方法。但我不確定如何處理特質中定義的私人領域。在Java中實現Scala特性時處理私有字段

也就是說,如果在特徵中有一個字段_something,如果我沒有實現_something_$eq()_something(),編譯器會對我大喊。我的假設是我必須在我的實現類中創建一個_something字段。

我只想確認這是處理此問題的正確方法。

回答

2

是,在類中創建私有字段

注意,你還需要調用美孚$類模塊的init方法

如果你想看到正是你需要做的,只是創建一個擴展Foo的Scala類,編譯它,然後使用反編譯器(jd-gui)來查看它是如何生成的。

+0

謝謝。並感謝延長課堂訣竅。我最初看到jd-gui中的scala代碼,但沒有定製類。 – pondermatic 2011-06-09 16:09:39