Scala generics - why I can't create parametrised object inside generic class?
-
26-10-2019 - |
문제
I'm currently learning scala.
Why this code doesn't work:
class GenClass[T](var d : T) {
var elems: List[T] = Nil
def dosom(x: T) = {
var y = new T()
y
}
}
I get:
error: class type required but T found
in place of var y - new T()
Is it because type erasing from java? Is there any way to solve this - create variable of type T inside generic function?
해결책
have a look at this question, there's an example of a factory: How to instantiate an instance of type represented by type parameter in Scala
다른 팁
Because you can not be sure there always is a public, parameterless constructor.
제휴하지 않습니다 StackOverflow