https://remp3indir.net/java-8-lambda-expression-vs-anonymous-class-functional-interface/
java 8 lambda expression vs anonymous class functional interface