import java.util.function.Function; abstract class MyTest { public T m() { //noinspection unchecked return (T)(Function)t -> t; } public Function m1() { //noinspection unchecked return (Function)(Function)t -> t; } }