Maison > Java > javaDidacticiel > Partage d'exemples de code illustrant le mécanisme de livraison et de rappel de Java

Partage d'exemples de code illustrant le mécanisme de livraison et de rappel de Java

高洛峰
Libérer: 2017-01-24 13:38:50
original
1571 Les gens l'ont consulté

Java passe par valeur ou référence
1. Paramètre de type d'origine passant

public void badSwap(int var1, int var2) 
{
int temp = var1; 
var1 = var2; 
var2 = temp;
}
Copier après la connexion

2. >

Exécutez ces deux programmes, je pense que vous comprendrez : Java manipule les objets "par référence", mais il transmet les références d'objet aux méthodes "par valeur".
public void tricky(Point arg1, Point arg2)
{
 arg1.x = 100;
 arg1.y = 100;
 Point temp = arg1;
 arg1 = arg2;
 arg2 = temp;
}
public static void main(String [] args)
{
 Point pnt1 = new Point(0,0);
 Point pnt2 = new Point(0,0);
 System.out.println("X: " + pnt1.x + " Y: " +pnt1.y);
 System.out.println("X: " + pnt2.x + " Y: " +pnt2.y);
 System.out.println(" ");
 tricky(pnt1,pnt2);
 System.out.println("X: " + pnt1.x + " Y:" + pnt1.y);
 System.out.println("X: " + pnt2.x + " Y: " +pnt2.y);
}
Copier après la connexion

Mécanisme de rappel Java

Spring l'utilise largement Maintenant que nous avons compris le mécanisme de rappel Java, voici une brève introduction au mécanisme de rappel Java :

En un mot, le rappel est un mode d'appel bidirectionnel. l'appelé le fera également. Appeler l'autre partie est appelé un rappel. "Si vous m'appelez, je vous rappellerai."


Regardez l'exemple suivant concernant le mécanisme de rappel :

Interface CallBackInterface :

Class ClassB :
public interface CallBackInterface {
 void save();
}
Copier après la connexion

Classe ClassA :
public class ClassB implements CallBackInterface {
 
public void save() {
System.out.println("执行保存操作!");
}
//
public void add()
{
 
    //这里调用ClassA的方法 同时ClasssB又会回调ClassB的save方法
    new ClassA().executeSave(new ClassB());
 }
 
}
Copier après la connexion

Un exemple plus classique d'utilisation de fonctions de rappel (utilisant des classes anonymes Java) omet ici le code source
public class ClassA {
 
 public void executeSave(CallBackInterface callBackInterface)
 {
 getConn();
 callBackInterface.save();  //you call me
 realse();
 }
 public void getConn()
 {
 System.out.println("获取数据库连接!");
 }
 public void realse()
 {
 System.out.println("释放数据库连接!");
 }
}
Copier après la connexion

Pour plus d'exemples de code illustrant le mécanisme de livraison et de rappel de Java, veuillez prêter attention au site Web PHP chinois pour les articles connexes !

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal