Chame um método no valor de retorno de uma referência de método

Eu tenho um fluxo de arquivos que quero filtrar com base no final do nome do arquivo:

public Stream<File> getFiles(String ending) throws IOException {
    return Files.walk(this.path)
            .filter(Files::isRegularFile)
            .map(Path::toFile)
            .filter(file -> file.getName().endsWith(ending));
}

Enquanto o lambda na última linha não é ruim, eu pensei que poderia usar referências de método lá também, assim:

 .filter(File::getName.endsWith(ending));

Ou, alternativamente, entre parênteses. No entanto, isso falha comThe target type of this expression must be a functional interface

Você pode explicar por que isso não funciona?

questionAnswers(3)

yourAnswerToTheQuestion