正如問題標題所述,訪問type
的成員是否會導致該成員的評估?或者它只是使用它的靜態類型?訪問lazy val的類型是否會導致它被評估?
這裏是其中我有一個implicit lazy val
的示例代碼,我想在與該類型的接受implicit val
的方法使用它的類型:
implicit lazy val nonSpaces: Array[(Point, Part)]
.. 。
def randomNonSpaceCoordinate(implicit nonSpaces: this.nonSpaces.type): Point = nonSpaces(Utils.Random.randUpTo(nonSpaces.length))._1
我得到了我的答案,謝謝。我認爲我很懶,因爲我也可以嘗試。但是將它作爲StackOverflow中的QA很好,對不對? 所以只需訪問該類型不需要實際評估惰性val。你能編輯你的答案來包含這個聲明嗎? 謝謝。 – ciuncan 2013-02-13 15:02:31