构造函数
(1)主构造函数
(2)辅助构造函数
提供了更多创造代码的方式
辅助构造器特点:
- 名字就叫做this,它的代码第一行必须是调用主构造器。
- 可以有多个
基本案例
///class 类
//Student 构造函数(构造器),用来创造对象。 new 的时候,就会自动调用一次构造函数
//构造函数:
// (1).主构造函数
// (2).辅助构造函数(提供了更多创造代码的方式)
// 特点:1. 名字就叫this,它的代码第一行必须是调用主构造器。2. 可以有多个
class Student(var name:String,var age:Int) {
println("Student构造函数被调用.....")
//辅助构造函数1
def this(name:String){
this(name,15)
println("辅助构造函数被调用.....")
}
//辅助构造函数2
def this(age:Int){
this("未知",age)
println("辅助构造函数被调用.....")
}
def sayHelllo():Unit={
println(s"我是${name},今年${age}")
}
}
def main(args: Array[String]): Unit = {
// 实例化类的对象 stu
// new 的时候,就会自动调用一次构造函数
val stu=new Student("小花",18)
//调用对象的方法
stu.sayHelllo()
val stu1=new Student("小明")
stu1.sayHelllo()
val stu2=new Student(20)
stu2.sayHelllo()
}