A functional interface is an interface with one abstract method, but it can have any number of default and static methods.
That one abstract method is called a function descriptor.
A lambda expression is a block of code that we can pass around to execute.
- Like an anonymous function.
- You can use a lambda expression in the context of a functional interface.
- Lambda expressions let you provide the implementation of the abstract method of a functional interface.
Capturing lamba.....
Method references.....