我已经看到(并听到)有关向Scala添加虚拟类的很多声音(根据virtual types,它已经具有Martin Odersky)。
外行对什么是虚拟类型有何看法(也许举个例子),如果scala具有虚拟类,可能是?
([我没有使用C或C++的经验,所以希望任何答案都不要引用这些语言]。)
最佳答案
虚拟类型很简单:
trait Foo {
type T
}
class Foo1 extends Foo {
type T <: AnyVal
}
class Foo2 extends Foo1 {
override type T = Boolean
}
class Foo3 extends Foo2 {
// override type T = Int // rejected by the compiler – would be unsound
}
这是an example of virtual classes in a Java-descendent language(
cclass
是一个虚拟类):关于scala - 我可以使用虚拟类(class)做什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3035807/