亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

漳浦县| 金塔县| 大宁县| 灵山县| 三穗县| 益阳市| 长汀县| 津南区| 贞丰县| 滁州市| 岢岚县| 永平县| 屯留县| 新郑市| 吉隆县| 金寨县| 安岳县| 呼玛县| 永安市| 丽江市| 合作市| 阳原县| 本溪| 西城区| 准格尔旗| 萝北县| 长子县| 永和县| 报价| 屏东县| 吴旗县| 通渭县| 五指山市| 黄大仙区| 江达县| 庆云县| 牡丹江市| 青海省| 商河县| 寿阳县| 临清市|