返回首页 Scala 抽象成员

Type 成员

Scala 中抽象类型,指的是在类或 Trait 中使用 type 定义的类型。 类或 trait 本身也可以使用 abstract 来定义,但这种使用 abstract 定义的类和 Trait 在 Scala 中不称为抽象类型。 你可以把派生于抽象类型的 非抽象类型,比如前面例子 Concrete 中的类型 T,看作给一个类型起一个别名。比如 Concrete 类定义中 String 类型的别名为 T。 因此在 Concrete 中所有出现 T 的地方都代表 String,因此前面的 Concrete 其实也可以写成:


class Concrete extends Abstract {
    type T = String
    def transform(x:T) = x + x
    val initial = "hi"
    var current = initial
}

我们将在后面再详细介绍抽象类型的用法。

上一篇: 关于 下一篇: 初始化抽象vals