我想在一個較小的例子上覆制我的問題。 我在下面的代碼片段中顯示的位置出現編譯錯誤。擴展內部類
class Outer {
class Inner
}
object OuterUtil {
val obj = new Outer
object xyz extends obj.Inner
//do something with xyz
}
//-------------------
object OuterUtil2 {
var m_obj: Outer = null
def createOuter() = {
m_obj = new Outer
}
def anotherMethod() {
//Compilation error here: stable identifier required,
//but OuterUtil2.this.m_obj found.
object xyz extends m_obj.Inner
}
}
object Test {
OuterUtil2.createOuter
OuterUtil2.anotherMethod
}
OuterUtil
工作正常。 在OuterUtil2
中,我將功能劃分爲兩個功能。我將Outer
實例m_obj
作爲成員var
存儲。 createOuter
方法在m_obj
中創建並存儲Outer
實例。在anotherMethod
中,我收到編譯錯誤。如何修復OuterUtil2
?
謝謝!這工作。 – dips