scala中主構造器和輔助構造器


class Person (var id: Int , var name: String) {//主構造器
  //在主構造器中聲明了類型 在這個地方就不能再次聲明類型 並且可以不用寫 id 和 name
  id
  name
  var age = 18
  var gerden = "female"

  //輔助構造器
  def this(id: Int ,name: String, age: Int){
    //每一個輔助構造器都必須把 主構造器的參數列表調用一遍
    this(id,name)
    this.age = age
  }
  //輔助構造器
  def this(id: Int ,name: String , gerder: String){
    //每一個輔助構造器都必須把 主構造器的參數列表調用一遍
    this(id , name)
    this.gerden = gerder
  }

  def add(a: Int){id  += a}
  def current() = id
}
object OOP {
  private var obj = "single"
  def hello() = println("object 來實現靜態")

  def main(args: Array[String]): Unit = {

    println(OOP.obj)

    OOP.hello()

    //主構造器中無參數 就可以向下面這樣創建對象了
    val p = new Person(9527,"風流倜儻玉樹臨風一朵梨花壓海棠的蟑螂小強拉的糞球")

    println(p.id)
    p.add(100)
    println(p.current())
    //獲取name的值
    println(p.name)
    p.name = ("天使")//更改
    println(p.name)
  }
}

 

輸出:

 

single
object 來實現靜態
9527
9627
風流倜儻玉樹臨風一朵梨花壓海棠的蟑螂小強拉的糞球
天使


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM