Let's create and run some Runnable! With Java 8, instead of
using anonymous classes, we can use lambda expressions.
The syntax (params) -> statement is used to create an instance of Runnable by implementing its run method.
This is possible only for interfaces that have only one abstract method, and such interfaces are called functional interfaces.
Wait, aren't all interface methods abstract? Not anymore. See Defender (Default) methods.