//class Teacher {
// var name: String = _ //可用使用占位符
// private var age = 27
// private[this] val gender = "male"
//
// //this 为辅助构造器,又叫重载构造器
// def this(name: String) {
// this //需要调用父构造器
// this.name = name
// }
//
// def sayHello() {
// println(this.name + ":" + this.age + ":" + this.gender)
// }
//}
//class Teacher(val name: String, val age: Int) {
class Teacher private (val name: String, val age: Int) { //加private后,主构造器只能自己使用,new时只能使用辅助构造器
println("this is th primary constructor")
var gender: String = _
println(gender)
def this(name: String, age: Int, gender: String) {
this(name, age)
this.gender = gender
}
}
object HelloOOP {
def main(args: Array[String]) {
// val p = new Teacher
// p.name = "Spark"
// p.sayHello
// val p = new Teacher("Spark", 5)
// println(" : " + p.age)
val p = new Teacher("Spark", 5, "male")
println(" : " + p.age)
}
}
scala基础10-主构造器/辅助构造器/私有构造器
最新推荐文章于 2021-06-05 17:02:18 发布