import java.io.IOException; class Test { interface B { K l(K k) throws E; } void bar(B b) {} T baz(T l) throws E { return null; } { bar(l -> baz(l)); bar(this::baz); } } class Test1 { interface B { K l(K k) throws E; } void bar(B b) {} class MyEx extends Exception{} T baz(T l) throws E { return null; } { bar(l -> baz(l)); bar(this::baz); } }