/**
* Scala通过override关键字来重写父类的成员
* 1.子类要重写父类中的某一个方法时,该方法必须要使用override关键字来修饰
* 2.可以使用override来重写一个val字段(注意:父类用var修饰的变量,子类不能重写)
*/
object 重写演示 {
class Person {
val name = "张三"
var age = 20
def sayHello(): Unit = println("Hello, Scala")
}
class Student extends Person {
override val name = "李四"
// 父类用var修饰该变量,不能被重写,运行会报错
/**
* 父类用var修饰的变量也不需要重写,需要使用的时候可以直接拿来用
*/
// override var age = 30
// 重写父类的成员方法
override def sayHello(): Unit = {
super.sayHello() // 调用父类的成员方法
println("Hello, Java")
}
}
def main(args: Array[String]): Unit = {
val p = new Student
println(p.name, p.age)
p.sayHello()
}
}
版权声明:本文为m0_58535137原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。