Szukaj…


Uwagi

Pojedyncze metody abstrakcyjne to typy wprowadzone w Javie 8 , które mają dokładnie jednego abstrakcyjnego elementu.

Składnia Lambda

UWAGA: Jest to dostępne tylko w Scali 2.12+ (oraz w najnowszych wersjach 2.11.x z -Xexperimental -Xfuture kompilatora -Xexperimental -Xfuture )

Typ SAM można zaimplementować za pomocą lambda:

2.11.8
trait Runnable {
  def run(): Unit
}

val t: Runnable = () => println("foo")

Typ może opcjonalnie mieć inne elementy nieabstrakcyjne:

2.11.8
trait Runnable {
  def run(): Unit
  def concrete: Int = 42
}

val t: Runnable = () => println("foo")


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow