0
我在我的項目特點,我爲我的配置文件中使用,這樣的事情:在所有斯卡拉:基於用戶輸入初始化的性狀的VAL
trait config {
val people = Seq("John","Jessie")
}
這個特點是使用extends
)我的對象(除了主要的)。我想這樣做是分配根據我從用戶main
功能收到args
不同的值,以people
,所以我會碰到這樣的:
trait config {
val people = args.head match {
case "A" => Seq("John","Jessie")
case "B" => Seq("Bill","James","Brad")
case _ => Seq("Jimmy")
}}
有沒有辦法做到這一點?
這是不太可能的配置類型數據的最佳模式的系統範圍的配置。你可能有一個包含你想要的任何配置數據的特徵,但是你必須包含它併爲每個對象填充它。這聽起來像是你想要定義配置數據已經存在的特性_所以你可以擴展它,而不必填充它,但這是不可能的。但是,如果你能做到這一點不會是一個壞主意,因爲這些數據不會被共享。每個對象中擴展它的實際對象都是不同的,效率不高。我會研究依賴注入。 –
對不起,我在意外完成之前意外地發表了評論,因爲我顯然不擅長使用此編輯器。誰知道新線很難? :) –
那麼將所有配置參數注入所有必需的對象和類的好方法是什麼? – shakedzy