Maison  >  Article  >  Java  >  Comment écrire une fonction de rappel Java

Comment écrire une fonction de rappel Java

DDD
DDDoriginal
2024-01-09 14:24:491670parcourir

Les méthodes d'écriture de la fonction de rappel Java sont : 1. Rappel d'interface, définir une interface qui contient une méthode de rappel, utiliser l'interface comme paramètre où le rappel doit être déclenché et appeler la méthode de rappel au moment approprié ; 2. Les rappels de classe internes anonymes peuvent utiliser des classes internes anonymes pour implémenter des fonctions de rappel afin d'éviter de créer des classes d'implémentation supplémentaires ; 3. Rappels d'expressions Lambda Dans Java 8 et versions ultérieures, les expressions Lambda peuvent être utilisées pour simplifier l'écriture de fonctions de rappel.

Comment écrire une fonction de rappel Java

Le système d'exploitation de ce tutoriel : système Windows 10, ordinateur Dell G3.

La fonction de rappel Java (Callback Function) est une technologie de programmation couramment utilisée pour implémenter un traitement asynchrone et des programmes pilotés par événements. Grâce à la fonction de rappel, vous pouvez transmettre une fonction en tant que paramètre à une autre fonction, et lorsqu'un événement spécifique se produit, la fonction transmise est appelée pour gérer l'événement.

En Java, il existe de nombreuses façons d'implémenter des fonctions de rappel. Voici plusieurs méthodes d'écriture courantes :

1 Rappel d'interface :

Définissez d'abord une interface qui contient une méthode de rappel. Cette interface sera implémentée comme une interface de rappel pour définir la logique de traitement de la fonction de rappel.

public interface Callback {
    void onCallback();
}

Utilisez cette interface comme paramètre où un rappel doit être déclenché et appelez la méthode de rappel au moment approprié.

public class Caller {
    public void doSomething(Callback callback) {
        // 执行一些操作
        // ...
        // 触发回调
        callback.onCallback();
    }
}

Créez une classe qui implémente l'interface de rappel et implémente la logique spécifique de la méthode de rappel.

public class CallbackImpl implements Callback {
    @Override
    public void onCallback() {
        // 处理回调逻辑
        // ...
    }
}

Utilisation :

Caller caller = new Caller();
Callback callback = new CallbackImpl();
caller.doSomething(callback);

2. Rappel de classe interne anonyme :

Vous pouvez utiliser des classes internes anonymes pour implémenter des fonctions de rappel afin d'éviter de créer des classes d'implémentation supplémentaires.

public class Caller {
    public void doSomething(Callback callback) {
        // 执行一些操作
        // ...
        // 触发回调
        callback.onCallback();
    }
}

Utilisation :

Caller caller = new Caller();
caller.doSomething(new Callback() {
    @Override
    public void onCallback() {
        // 处理回调逻辑
        // ...
    }
});

3. Rappel d'expression Lambda :

Dans Java 8 et supérieur, les expressions Lambda peuvent être utilisées pour simplifier l'écriture de fonctions de rappel.

public class Caller {
    public void doSomething(Callback callback) {
        // 执行一些操作
        // ...
        // 触发回调
        callback.onCallback();
    }
}

Comment utiliser :

Caller caller = new Caller();
caller.doSomething(() -> {
    // 处理回调逻辑
    // ...
});

Quelle que soit la méthode utilisée, l'essence de la fonction de rappel est de transmettre une fonction en tant que paramètre à une autre fonction et d'appeler la fonction transmise au moment approprié pour gérer des événements spécifiques. Grâce aux fonctions de rappel, le traitement asynchrone et la gestion des événements du programme peuvent être réalisés, améliorant ainsi la flexibilité et l'évolutivité du programme.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn