抽象&继承&重写
Posted jztx123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了抽象&继承&重写相关的知识,希望对你有一定的参考价值。
抽象&继承&重写
- 定义父类
abstract class Car{ //是抽象类,不能直接被实例化
val carBrand: String //字段没有初始化值,就是一个抽象字段
def info() //抽象方法,不需要使用abstract关键字
def greeting() {println("Welcome to my car!")}
}
- 子类实现
class BMWCar extends Car {
//重写父类字段,需要使用override关键字
override val carBrand = "BMW" // 只能重载val字段,var本身就可变
//重写超类的抽象方法时,不需要使用override关键字
def info() {printf("This is a %s car. It is on sale", carBrand)}
//重写超类的非抽象方法,必须使用override关键字
override def greeting() {println("Welcome to my BMW car!")}
}
以上是关于抽象&继承&重写的主要内容,如果未能解决你的问题,请参考以下文章
代码重构 & JDT判断一个方法是否是实现重写,继承重写和递归