(一)继承的概念和基本语法
- 定义:在原有类的基础上定义一个新类,原有类称为父类,新类称为子类。
class 子类名 extends 父类名 { 类体 }
object Class11 {
class Boss {
var car = "豪车"
def power(): Unit = {
println("Boss 有权力....")
}
}
class NoBody extends Boss
def main(args: Array[String]): Unit = {
val b = new NoBody()
println(b.car)
b.power()
}
}
重名方法的重写
object class12 {
class Boss {
def test(): Unit = {}
def power(): Unit = {
println("Boss 有权力....")
}
var car = "豪车"
}
class Nobody extends Boss {
def run(): Unit = {
}
override def power(): Unit = {
println("老莫,我想吃鱼了")
}
}
def main(args: Array[String]): Unit = {
val b = new Nobody()
println(b.car)
b.power()
b.run()
}
}
继承的好处之复用代码
object Class13 {
class Father {
println("Father 构造器被调用")
}
class Son extends Father {
println("Son 构造器被调用")
}
def main(args: Array[String]): Unit = {
new Son()
}
}
object class14 {
class Dog(var name: String, var age: Int) {
println(s"Dog ${name},${age} 构造器被调用")
}
class RuralDog(name: String, age: Int) extends Dog(name, age) {
println("RuralDog 的构造器...")
}
def main(args: Array[String]): Unit = {
new RuralDog("旺财", 3)
}
}