In Java il simbolo :: è chiamato operatore di riferimento a metodo, permette di fare riferimento a metodi senza invocarli direttamente attraverso una lambda expression.
Esistono 4 principali tipi di riferimenti a metodo:
- Riferimento a un metodo statico:
Class::staticMethod - Riferimento a un metodo di istanza su un oggetto specifico:
object::Method - Riferimento a metodo di istanza su un oggetto arbitrario:
Class::Method - Riferimento a un costruttore:
Class::new
Può essere utilizzato per passare un riferimento a un metodo come argomento a un altro metodo o implementare un interfacce funzionale.