我已經看到了關於Scala和變量範圍(如Scala variable scoping question)一些問題斯卡拉模糊的變量名中的一個方法
但是,我無法讓我的具體使用情況來工作。
比方說,我有一個名爲回購特點:
trait Repo {
val source: String
}
然後我要創建回購的實現方法...
def createRepo(source: String) =
new Repo {
val source: String = source
}
當然,我有兩個source
變量在方法級別使用一個,在Repo
實現中使用一個。如何從我的Repo
定義中引用方法級source
?
謝謝!
既然都指向同一對象,沒關係。 –
@ user-unknown,這很重要,因爲在第二種情況下,'source'被遞歸綁定,但是類初始化語義使其成爲'null'。從REPL嘗試它,你會看到:'createRepo(「hi」)。source == null'。 –