scala學習筆記(十五) 高等型別

2021-09-30 12:41:42 字數 860 閱讀 3034

類或特質可以定義乙個在子類中被具體化的抽象型別,如下:

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 ...