依旧

13 阅读1分钟
object class02 {
  class Parent() {
    def run(): Unit = {
      println("run.....")
    }
  }

  class Son extends Parent() {
    override def run(): Unit = {
      println("开启自动驾驶的车 run......")
    }
  }

  def main(args: Array[String]): Unit = {
    val s1 = new Son()
    s1.run()
  }
}

super ,在子类中访问父类

class Parent() {
    val name: String = "**"
    def run(): Unit = {
      println("run.....")
    }
  }

  class Son extends Parent() {
    // 如果希望对父类的方法进行改造:觉得不好
    def run1(): Unit = { ... }

    override def run(): Unit = {
      super.run() // super.run 在子类中,调用父类的方法
      println("开启自动驾驶的车 run......")
    }
  }

  def main(args: Array[String]): Unit = {
    val s1 = new Son()
    s1.run()
  }
}