I have a method with signature printStudents(List<Student> roster, CheckStudent)
and a functional interface
interface CheckStudent {
boolean test(Student s);
}
I have the following method invocation,
printStudents(
roster,
(Student s) -> s.getGender() == Student.Sex.MALE
&& s.getAge() >= 18
&& s.getAge() <= 25
);
Can we say that the functional interface is implemented? because from my experience we call an interface is implemented when a class implements it, however in this case there is no class implementing it?
My second question,interfaces define functionality and concrete classes implement the functionality, so in the above case is a class implicitly implementing it or not?