Muitas vezes me pergunto por que o Java usa ::
para referências de método em vez de .
, por exemplo, por que escrever
System.out::println
ao invés de
System.out.println
Obviamente, pode-se simplesmente responder: "porque os designers decidiram". Por outro lado, eu esperava a segunda sintaxe, porque o ponto é a sintaxe Java comum para acessar os membros da classe.
Existe algum motivo especial conhecido para introduzir a nova ::
sintaxe em vez de usar a .
convenção existente para referências de métodos?