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 一个子类的对象时,会先调用 父 类的构造器,再调用 子 类的构造器
执行顺序:
- 父类构造器
- 子类构造器