继承

42 阅读1分钟

1. 什么是继承?

继承是面向对象编程的一个基本特性,它允许一个类(子类)基于另一个类(父类)来创建,从而:

  • 获得父类的属性和方法(代码复用)
  • 可以添加新的属性和方法(功能扩展)
  • 可以重写父类的方法(多态实现)

示例

scala

class Person(val name: String) {  // 父类
    def introduce(): Unit = println(s"我是$name")
}

class Student(name: String, val grade: Int) extends Person(name) {  // 子类
    def study(): Unit = println(s"$name 在学习")
}

2. 实现继承要用 extends 关键字

scala

class 子类 extends 父类 {
    // 子类的定义
}

3. 实现重写要用 override 关键字

scala

class Animal {
    def sound(): Unit = println("动物叫")
}

class Dog extends Animal {
    override def sound(): Unit = println("汪汪汪")  // 重写父类方法
}

4. new 一个子类的对象时,会先调用  类的构造器,再调用  类的构造器

执行顺序

  1. 父类构造器
  2. 子类构造器