import java.util.function.Function;
abstract class Logger {
public void error(Throwable t) { }
public abstract void error(String message, Throwable t, String... details);
}
public class JavaTest {
private static Logger ourLogger = null;
void test() {
test2(ourLogger::error);
test3(ourLogger::error);
}
void test2(Function x) { }
void test3(Function x) { }
}