Fundamentals

Default Methods

Collections

Idioms and Techniques

Design Rationale

Advanced Questions

What is a functional interface?

Informally, a functional interface is one whose type can be used for a method parameter when a lambda is to be supplied as the actual argument. For example, the forEach method on collections could have the following signature:

public void forEach(Consumer<? super T> consumer);

The implementation of forEach must apply a single method of the […]