Scala繼承

繼承是面向對象的概念,用於代碼的可重用性。可以通過使用extends關鍵字來實現繼承。 為了實現繼承,一個類必須擴展到其他類,被擴展類稱為超類或父類。擴展的類稱為派生類或子類。

示例

class SubClassName extends SuperClassName(){
    /* Write your code
     *  methods and fields etc.
     */
 }

繼承的簡單例子

Scala單繼承示例

class Employee{
    var salary:Float = 11100
}

class Programmer extends Employee{
    var bonus:Int = 5100
    println("Salary = "+salary)
    println("Bonus = "+bonus)
}

object Demo{
    def main(args:Array[String]){
        new Programmer()
    }
}

將上面代碼保存到原始檔案:Demo.scala中,使用以下命令編譯並執行代碼 -

D:\software\scala-2.12.3\bin>scalac Demo.scala
D:\software\scala-2.12.3\bin>scala Demo
Salary = 11100.0
Bonus = 5100

Scala繼承類型

Scala支持各種類型的繼承,包括單一,多層次,多重和混合。可以在類中使用單一,多層次和層次結構。多重和混合只能通過使用特徵來實現。在這裏,通過使用圖形表示所有類型的繼承。

class A{
    var salary1 = 10000
}

class B extends A{
    var salary2 = 20000
}

class C extends B{
    def show(){
        println("salary1 = "+salary1)
        println("salary2 = "+salary2)
    }
}

object Demo{
    def main(args:Array[String]){
        var c = new C()
        c.show()

    }
}

將上面代碼保存到原始檔案:Demo.scala中,使用以下命令編譯並執行代碼 -

D:\software\scala-2.12.3\bin>scalac Demo.scala
D:\software\scala-2.12.3\bin>scala Demo
salary1 = 10000
salary2 = 20000

上一篇: Scala this關鍵字 下一篇: Scala方法覆蓋