scala的子类调用父类的构造器的使用

package ccn.aura.test.demo01.Dtmo.DD
//注意scala只有主构造器才可以直接调用父类的构造器(主构造器和辅助构造器)子类的辅助够造器无法直接调用父类的够造放法必须通过子类中的主够造器来进行间接调用父类的够造器
object CaoLei {
def main(args: Array[String]): Unit = {
//调用父类无参够造
//var zi=new Zi
// zi.name=“开始”
// zi.age=22
// zi.show()
//调用父类有参够造
var zi1=new Zi1
zi1.name=“开始”
zi1.age=22
zi1.show()
}
}
class Fu{
println(“这是父类主够造器”)
var name:String=_
var age:Int=_
def this(name:String,age:Int){
this()
this.name=name
this.age=age
println(“父类的辅助构造器”)
}

}
//调用父类的无参够造器
class Zi(gender:Int) extends Fu{
println(“子类的主构造器”)
def this(){
this(1)
println(“子类的辅助构造器”)
}
def show(){
println(s"name: n a m e , a g e : {name},age: name,age:age,gender:$gender")

}}
//调用父类的有参够造器
class Zi1(name:String,age:Int,gender:Int) extends Fu(name:String,age:Int){
println(“子类的主构造器”)
def this(){
this(“wangmign”,10,1)
println(“子类的辅助构造器”)
}
def show(){
println(s"name: n a m e , a g e : {name},age: name,age:age,gender:$gender")

}}

你可能感兴趣的:(scala的子类调用父类的构造器的使用)