我正在尝试使用此方法创建特征实例
val inst = new Object with MyTrait
Run Code Online (Sandbox Code Playgroud)
这很好用,但我想把这个创作转移到生成器函数,即.
object Creator {
def create[T] : T = new Object with T
}
Run Code Online (Sandbox Code Playgroud)
我显然需要清单以某种方式修复类型擦除问题,但在此之前,我遇到了两个问题:
即使有一个隐含的清单,Scala仍然要求T是一个特征.如何添加限制来创建[T]以使T成为特征?
如果我选择使用Class.newInstance方法动态创建实例而不是使用"new",我如何在"new object with T"中指定"with"?是否可以在运行时动态创建新的具体mixin类型?