Why Functional Interface In Java