Understanding Functional Interfaces and Writing Mixins in Java

Java 8 was launched in March 2014 with great fanfare. The new lambda syntax allows us to have a more succinct coding style and get rid of a lot of boilerplate code. However, there is also confusion. Even the “State of the Lambdas” paper starts by comparing lambdas to ActionListener.

Even though that is indeed a functional interface, its related listeners such as MouseListener are not. This talk shows a number of interfaces and let the audience decide whether of not it qualifies as a functional interface. The talk ends with a short demo of how we can write mixins in Java, by combining functional interfaces with default methods.

Video producer: http://topconf.com/