Scala einzige Methode, Schnittstelle Implementierung

Tut Scala irgendwelche syntaktischen Zucker ersetzen Sie den folgenden code:

val thread = new Thread(new Runnable {
   def run() {
     println("hello world")
   }    
})

mit etwas mehr wie:

val thread = new Thread(() => println("hello world"))

in Fällen, in denen das Merkmal/interface muss nur eine Methode implementiert werden? Wenn nicht, gibt es eine chance zu haben, diese Funktion in Scala in der Zukunft? Es ist besonders nützlich, wenn man sich mit Java-Klassen.

Fand ich eine ähnliche Frage vor drei Jahren: Die generische Implementierung eines Java-Single-Abstract-Method-Schnittstelle mit einem Scala-Schließung? Die Antwort sagt, wir sollten die Funktion in Scala 2.10. Ich habe mir für eine Einzige Abstrakte Methode, Schlüsselwort, aber ich habe leider nichts gefunden. Was passiert mit dem feature?

  • Ich habe ein kleines proof-of-concept-makro-basierte demo - hier. Es könnte leicht gemacht werden, mehr Allgemeine und robust, aber Sie sind nicht ganz die Prägnanz du fragst nach.
InformationsquelleAutor Mequrel | 2014-04-02
Schreibe einen Kommentar