一千萬個為什麽

搜索

在Scala中,如何使用構造函數編寫類,而不是所有參數都是類成員?


我想編寫一個類,其構造函數有兩個參數,但參數實際上不是該類的成員。例如

class P(V1:Int, V2:Int) {
   val set = Set(V1, V2)
}

構建了'set'後,我實際上並不關心V1和V2。有沒有辦法在Scala中表達這一點?

最佳答案

好吧,就是這樣。如果構造函數參數沒有用 valvar 標記,並且類是 case class ,那麽如果使用它們將被保留分配在內部方法(或 lazy val ,我想)。如果僅在構造函數中使用,它們將不會與對象一起分配,甚至不會作為私有字段分配。

轉載註明原文: 在Scala中,如何使用構造函數編寫類,而不是所有參數都是類成員?

猜你喜歡