Runnable
is a functional interface, as such, it can be replaced by a lambda expression or a method reference.
This is what you got here – claim(Runnable action)
can get any lambda or method reference to a method that meets the Runnable#run
signature – getting zero parameters and return void, regardless if this method is called run or if the class implements the interface – if the signature fits – it can work as functional interface.
CLICK HERE to find out more related problems solutions.