scala基础10-主构造器/辅助构造器/私有构造器

//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)
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值