Ich habe eine Java-Bibliothek eines Drittanbieters, die ein Objekt mit einer solchen Schnittstelle hat:
public interface Handler<C> {
void call(C context) throws Exception;
}
Wie kann ich es in Kotlin ähnlich wie in einer anonymen Java-Klasse wie folgt präzise implementieren:
Handler<MyContext> handler = new Handler<MyContext> {
@Override
public void call(MyContext context) throws Exception {
System.out.println("Hello world");
}
}
handler.call(myContext) // Prints "Hello world"
acceptHandler { println("Hello: $it")}
würde auch in den meisten FällenIch hatte einen Fall, in dem ich keine Variable dafür erstellen wollte, sondern sie inline ausführen wollte. So wie ich es erreicht habe
quelle
quelle
Die einfachste Antwort ist wahrscheinlich das Lambda des Kotlin:
quelle