Références de méthodes Java 8
Une référence de méthode pointe vers une méthode par son nom.
Les références de méthodes peuvent rendre les constructions du langage plus compactes et concises, en réduisant le code redondant.
Les références de méthodes utilisent une paire de deux-points:: 。
Ci-dessous, nous définissons 4 méthodes dans la classe Car comme exemples pour distinguer les 4 différents types de références de méthodes en Java.
-
Référence de constructeur :Sa syntaxe est Class::new, ou plus généralement Class< T >::new. Exemple :
final Car car = Car.create( Car::new ); final List< Car > cars = Arrays.asList( car ); -
Référence de méthode statique :Sa syntaxe est Class::static_method. Exemple :
cars.forEach( Car::collide ); -
Référence de méthode vers un objet arbitraire d'une classe particulière :Sa syntaxe est Class::method. Exemple :
cars.forEach( Car::repair ); -
Référence de méthode à un objet spécifique :Sa syntaxe est instance::method. Exemple :
final Car police = Car.create( Car::new ); cars.forEach( police::follow );
Exemples de références de méthode
Entrez le code suivant dans le fichier Java8Tester.java :
Fichier Java8Tester.java
Dans l'exemple, nous référençons la méthode System.out::println comme méthode statique.
Exécutez le script ci-dessus, et la sortie est :
$ javac Java8Tester.java $ java Java8Tester Google Example Taobao Baidu Sina
Autres extensions
Nouveautés de Java 8