3.1 Outro exemplo: listeners
Interfaces funcionais são amplamente utilizadas em listeners de eventos. Antes do Java 8, era comum utilizar classes anônimas para implementar esses listeners. Um exemplo clássico é o uso de ActionListener para capturar o clique de um botão: button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("evento do click acionado"); } });

Interfaces funcionais são amplamente utilizadas em listeners de eventos. Antes do Java 8, era comum utilizar classes anônimas para implementar esses listeners. Um exemplo clássico é o uso de ActionListener para capturar o clique de um botão:
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("evento do click acionado");
}
});