我寫了這個例子,是想漂亮:擴展類在一個單獨的對象
class TestMatch(val i: Int)
object TestMatch extends TestMatch(10){ // <-- Here
def apply(i: Int) = new TestMatch(i)
def unapply(tm : TestMatch): Option[Int] = Some(tm.i)
}
這是怎麼回事?我們延伸TestMatch(10)
。我們如何擴展用i = 10
創建的實例f測試匹配?這對我來說沒有多大意義。或者TestMatch(val i: Int)
定義了組類型而不是單一類型。像在C模板++:
template<int i>
class TestMatch{
//...
}
我由線對象consufed
TestMatch延伸TestMatch(10)
看起來我們延伸TestMatch(10)
我認爲是的目的鍵入TestMatch
用建構參數i = 10
創建。如果我寫了
TestMatch extends TestMatch
它不會編譯。
你能否澄清你的問題?目前還不清楚你想要解釋什麼。 –