類或特質可以定義乙個在子類中被具體化的抽象型別,如下:
trait reader
class stringreader extends reader
class imagereader extends reader
//上面的抽象型別也可以寫為下面的這種形式
這種方式是 型別引數
trait readerc[c]
抽象型別還可以使用界定,與型別引數一樣
trait listener
這樣在子類中指定的時候
event
必須是eventobject
的乙個相容的型別
package demo
/*** @author administrator
*/object scalatype
class bug
def turn(): this.type =
// def show =
def and(obj: show.type) =
def and(obj: then.type) = this
def turn(obj: around.type): this.type =turn()
}def fun(obj: , f: => unit) catch finally }}
abstract class dim[t](val value: double, valname: string)
class seconds(v: double) extendsdim[seconds](v, "s")
class meters(v: double) extendsdim[meters](v, "m")
}
scala學習(十五) trait
下面是乙個trait的簡單例子,裡面包含的trait的基本用法,trait的繼承 trait logger def warn msg string trait logger2 trait logger3 import scala.reflect.class dog extends logger wi...
Scala學習筆記 型別引數化陣列
scala看得頭痛,記一下筆記。valgreetstrings newarray string 3 greetstrings 0 hello greetstrings 1 greetstrings 2 world n for i 0to2 print greetstrings i 說明 1 scal...
Scala學習筆記
scala學習筆記 一.scala中集合的常用方法 首先定義兩個陣列集合,用於測試 scala val arr1 array 1,2,3,4 arr1 array int array 1,2,3,4 scala val arr2 array 3,4,5,6 arr2 array int array ...