Scala 速通语法(六)| 继承
Scala 速通语法(六)| 继承
覆写字段
- 在Scala中,子类改写父类的字段,我们称为覆写/重写字段,覆写字段需要使用
override
修饰 - 在Java中只有方法的重写,没有属性、字段的重写,准确的讲,是隐藏字段代替了重写
Java的动态绑定机制
- 如果是调用的方法,则jvm机会将该方法和对象的内存地址绑定
- 如果调用的是一个属性,则没有动态绑定机制,在哪里调用,就返回对应值
Scala覆写字段
- 因为Scala底层获取属性、字段的值都是方法控制,所以存在动态绑定机制,调用方法会返回当前类的字段值
- def 只能重写另一个 def(即方法只能重写方法)
- val 能重写另一个 val 属性或者 重写不带参数的 def
- var 只能重写(实际是实现)另外一个抽象的var