object Test06_ConstructorParams {
def main(args: Array[String]): Unit = {
val student2 = new Student2
student2.name = "你好啊"
student2.age = 18
println(s"sutdnet2:name=${student2.name} ${student2.age}")
val student3 = new Student3("BOB", 18)
println(s"student3:name=${student3.name} ${student3.age}")
val student4 = new Student4("admin", 13)
student4.printInfo()
val student5 = new Student5("雷帅", 15,"西南科技大学")
student5.printInfo()
}
}
//定义类
//无参构造器
class Student2 {
//单独定义属性
var name: String = _
var age: Int = _
}
//有四种赋值的方法,各不同 都需掌握
//上面定义等价于
class Student3(var name: String, var age: Int) //推荐使用这种方法
//主构造器参数无修饰
class Student4(name: String, age: Int) {
def printInfo() {
println(s"student4: name=${name},age=$age")
}
}
class Student5(var name: String, var age: Int) {
var school: String = _//增加的属性
def this(name: String, age: Int, school: String) {
this(name, age)
this.school = school
}
def printInfo(): Unit = {
println(s"student5: name=${name},age=$age,school=$school")
}
}
Scala面向对象--四种赋值及调用的方法
最新推荐文章于 2022-06-18 19:33:29 发布