The return type and exception types of a lambda expression are inferred by the compiler; the parameter types may be explicitly specified or they may be inferred from the assignment context.
So this expression will be valid without explicit type annotation:
CallbackHandler cb = { c -> System.out.println("pippo") };Finally, they seem to have mercy with the humble Java developer.