Je travaille sur un projet où la ligne suivante est utilisée pour créer un membre variable d'instance Executor test:"Runnable :: run" - Comment créer une instance d'Executor?
private Executor executor = Runnable::run;
Les pistes de code et compiles mais je ne comprends pas comment Runnable::run
crée une instance de Executor
puisque les deux sont des interfaces différentes.
Quelqu'un peut-il expliquer? En particulier:
- D'où vient l'implémentation de Runnable?
- Comment est-il affecté à une implémentation
Executor
(puisqueExecutor
est une interface différente)? - Quel type de
Executor
est créé? par exemple. single threaded ou pooled - Comment cela serait-il écrit avant Java 8?
Merci.
[Références Méthode] (https://docs.oracle. com/javase/tutoriel/java/javaOO/methodreferences.html). –