我使用类型投影。你可以在下面的例子中找到一个类型别名。如何在Scala中创建投影类型的实例?
object Example extends App {
type AliasForY = X#Y
class X {
class Y {
def fun = 100500
}
}
def f(y: AliasForY) = y.fun
println {
f(new AliasForY())
}
}
我想通过别名实例化我的内部类,但我得到一个错误Example.X is not a legal prefix for a constructor
。
我该如何解决?
所以,我不能这样做,通过'AliasForY',对不对? – Finkelson
这是正确的,除非您将“Y”放入伴随对象中。 – jkinkead