抽象&继承&重写

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判断一个方法是否是实现重写,继承重写和递归

JavaSE知识-09(面向对象_多态&抽象类&接口)

06 面向对象:多态&抽象类&接口&权限修饰符&内部类

面试题-C++-菱形继承-继承&组合-多态-重载&重写&重定义

python开发面向对象基础:接口类&抽象类&多态&多继承

java学习--基础知识进阶第二天--继承匿名对象&final抽象类