私は次のように一般的なファクトリを作成して遊んでいました:
trait Factory[T] { def createInstance():T = new T() }
val dateFactory = new Factory[Date](){}
val myDate = dateFactory.createInstance()
T は実行時まで定義されていないため、「new T()」はコンパイルされません。クラスのインスタンスを何らかのメソッドに渡すことで機能させることができることを知っています(つまり、 createInstance(classOf[Date]) )
超単純なファクトリを作成できるように、「new T()」を置き換えることができるイントロスペクション マジックがあるかどうかを尋ねています。