Reputation: 2915
Suppose I have a Java inteface
public interface Bar {
public void baz(String st)
public void jaz()
}
I want to implement above interface anonymously in scala within a function body like:
def foo() = {
val bar : Bar = new Bar() {
// how to do that ?
}
}
Upvotes: 13
Views: 4974
Reputation: 49705
If I had to, I'd write it as:
val bar = new Bar {
def baz(st: String): Unit = {
// method impl
}
def jaz(): Unit = {
// method impl
}
}
Though my preference is to avoid side-effecting methods as much as possible, they don't play very nicely with functional programming
Upvotes: 13
Reputation: 92036
val bar = new Bar {
def baz(st: String) {
// method impl
}
def jaz() {
// method impl
}
}
Upvotes: 6