我们知道, 在 Java 中只能重写方法, 不能重写字段. 原因就是隐藏字段的存在.
由于 Java 中的隐藏字段的存在, 容易产生一些不太发现的 bug, 所以 Scala 没有采用 Java 的这种方式.
Scala 是允许重写字段的: 用到关键字override
override
字段的重写规则:
用val去重写val或者不带参数的def(不能去重写var)
val
def
var
var 只能去重写另外一个抽象的var(没有初始值的变量, 只能放在抽象类中, 后面学习) 学习抽象类的时候再了解