91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

scala class類怎么使用

發布時間:2021-12-08 15:35:19 來源:億速云 閱讀:298 作者:iii 欄目:云計算

本篇內容介紹了“scala class類怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

a. 聲明類 和 getter/setter 方法

class Person{
  // name為變量,不設置初始值  _ 代表前面的name變量
  // var 會生成 getter和setter 方法
  var name: String = _
  // age為常量,不可變
  // val 只會生成 getter方法
  val age = 10
  // private 私有變量,只能再class內部使用
  private[this] val gender = "male"
}

b. 構造函數( primary constructor & auxiliary constructor)

主構造方法  &  附屬構造器

/*
1. 主構造器直接跟在類名后面, 主構造器中國年的參數,最后會被編譯成字段
2. 主構造器執行的時候, 會執行類中的所有語句
3. 假設參數聲明的時候不帶val和var, name就相當于 private[this], 只能在class內部調用 !!!
*/
class Person2(var name: String, val age: Int) {
  // primary 初級的 constructor 構造器
  println("this is the primary constructor!")

  var gender: String = _
  val school: String = "ZJU"
  /*
  * 1. 附屬構造器名稱為this
  * 2. 每一個附屬構造器必須首先調用已經存在的子構造器和附屬構造器
  */
  def this(name: String, age: Int, gender: String){
    this(name, age)
    this.gender = gender
  }
}

c. 繼承( extends )/ 重寫父類方法( override def) / 重寫字段( override val / override var )

不過: override var 測試發現編譯不通過

class Student(name: String, age: Int, val major: String) extends Person2(name, age){
  println("this is the subclass of Person, major is: " + major)

  override val school: String = "Bzz"
  // 子類覆蓋父類的方法/變量 一定要用: override
 override def toString = "Override toString ..."
}



object Basic2{
  def main(args: Array[String]): Unit ={
//    val p = new Person  //括號可省略
//    p.name = "Jack"
//    println(p.name + ": " + p.age)

//    val p2= new Person2("Jack", 20)
//    println(p2.name + ":" + p2.age)

//    val p2= new Person2("Jack", 20, "male")
//    println(p2.name + ":" + p2.age + ":" + p2.gender)
    val s= new Student("Jack", 20, "male")
    // 加載順序: 先加載 父類,然后加載 子類
    println(s.name + ":" + s.age + ":" + s.major + ":" + s.school)
  }

“scala class類怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節
推薦閱讀:
  1. Scala的泛型
  2. Scala之繼承

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平泉县| 名山县| 永州市| 杭锦后旗| 沈阳市| 太康县| 林口县| 鲁山县| 巩义市| 武山县| 恭城| 绥阳县| 尼玛县| 新沂市| 廊坊市| 当涂县| 景泰县| 霍林郭勒市| 大同县| 巴青县| 黔西县| 师宗县| 射洪县| 化州市| 清新县| 鹤壁市| 安徽省| 南宫市| 托克逊县| 天水市| 石渠县| 两当县| 新宁县| 承德市| 红河县| 绥化市| 阳泉市| 宁津县| 紫阳县| 肥东县| 大方县|