继承

1、继承的调用顺序:父类构造器 -> 子类构造器

2、scala是单继承

例子:

 1 object Test4_Inherit {
 2   def main(args: Array[String]): Unit = {
 3     val student41 = new Student41("wl", 22)
 4     val student42 = new Student41("wll", 22, "654321")
 5     student41.printInfo()
 6     student42.printInfo()
 7   }
 8 }
 9 
10 class Person4() {
11   var name:String = _
12   var age:Int = _
13 
14   println("1.父类的主构造器调用")
15 
16   def this(name:String, age:Int) {
17     this()
18     println("2.父类的辅助构造器调用")
19     this.name = name
20     this.age = age
21 
22   }
23   def printInfo(): Unit = {
24     println(s"Person: $name $age")
25   }
26 }
27 
28 class Student41(name:String, age:Int) extends Person4() {
29   var stuNo:String = _
30   println("3.子类的主构造器调用")
31 
32   def this(name: String, age: Int, stuNo: String){
33     this(name, age)
34     println("4.子类的辅助构造器调用")
35     this.stuNo = stuNo
36   }
37 
38   //重写父类方法
39   override def printInfo(): Unit = {
40     println(s"Student41: $name $age $stuNo")
41   }
42 }

 

posted @ 2022-05-09 15:11  小王同学学编程  阅读(18)  评论(0)    收藏  举报
levels of contents