Buscar..


Observaciones

Los métodos abstractos únicos son tipos, introducidos en Java 8 , que tienen exactamente un miembro abstracto.

Sintaxis lambda

NOTA: Esto solo está disponible en Scala 2.12+ (y en las versiones recientes de la versión 2.11.x con los -Xexperimental -Xfuture compiler)

Un tipo SAM se puede implementar utilizando un lambda:

2.11.8
trait Runnable {
  def run(): Unit
}

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

El tipo puede tener opcionalmente otros miembros no abstractos:

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
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow