Understanding Java's functional interfaces

from blog Kevin Boone's website, | ↗ original
Functional interfaces are allow Java programmers to write methods whose arguments are lambda functions. How does this work, and why would it be useful?