继承与重写

Scala 中所有的类都继承自一个父类。像前一节的Complex 这种没有指定的例子,Scala 会默认使用scala.AnyRef

Scala 中可以重写继承自父类的函数。但是为了避免意外重写,必须加上override 修饰字来明确表示要重写函数。我们以重写Complex 类中来自ObjecttoString 作为示例。

  1. class Complex(real: Double, imaginary: Double) {
  2. def re = real
  3. def im = imaginary
  4. override def toString() =
  5. "" + re + (if (im < 0) "" else "+") + im + "i"
  6. }