1. 繼承

Scala語言通過 extends 關鍵字來繼承類.
那么繼承一個類有什么好處呢? 子類除了擁有繼承自超類的方法和字段(即為val(常量), var(變量)所定義的), 還可以添加自己需要的新方法和新字段, 而且不但可以重寫(override)超類的方法, 還可以重寫超類的字段.

final 關鍵字

在Scala中, 不僅可以將類聲明為final, 而且可以將字段和方法聲明為final

當類被聲明為final時, 類不可以被繼承; 當方法和字段被聲明為final時, 對應的方法和字段不可以被子類重寫, 看看下面這個例子就一目了然

class Person {  final val key = 0
  val e = 1}class Kid extends Person {  // 報錯: Value 'key' can not override final member
  // override val key = 1  
  override val e = 2 }object test extends App {  val k = new Kid;  println(k.key)  println(k.e)
}/*output02*/

2. 重寫方法

在Scala中重寫一個非抽象方法

網友評論