继承的概念及基本语法

24 阅读1分钟
package level02

//多个类之间的关系:继承
//重写:子类对父类的同名方法进行重写!
object Class12 {
  class Boss() {
    def power():Unit = {
      println("Boss 有权利...")
    }
    val 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()
  }
}

屏幕截图 2025-11-12 091957.png

屏幕截图 2025-11-12 092209.png

package level02

// 父类和子类的构造器调用顺序:先调用父类的构造器,在调用子类的构造器
object Class14 {
  //父类
  class Dog(var name:String,var age:Int) {
    println(s"Dog ${name}${age} 构造器被调用")
  }
  //子类 中华田园犬
  //子类带参构造器
  //1 继承父类的属性  不用写val,var 修饰符
  // 父类构造器
  //直接传入参数,不用写属性的类型
  class RuralDog(name:String,age:Int) extends Dog(name,age) {
    println("RuralDog 的构造器...")
  }

  def main(args: Array[String]): Unit = {
    new RuralDog("旺财",3)
  }
}

屏幕截图 2025-11-12 100238.png