zoukankan      html  css  js  c++  java
  • 关于对回调函数的理解

    关于回调一句话===就是我调别人的方法,在别人的方法中又回过来调用了我的方法

    回调函数 (服务端代码,业务是前辈,或者别人写的接口,我们调用,就像我们调用微信接口充值,成功会给你提示)

    条件1:回调接口,服务端,客户端

    服务端代码(别人代码):
    1,定义回调接口。(客户端实现,此实现就是客户端在服务端代码执行完之后想让客户端做什么事情(也就是通知客户端些什么))
    2:服务端。第一,具体要干的活,第二干完活后通知客户端信息

    客户端代码(自己要实现的事情)

    1.调用服务端,你想让他干啥。
    2.实现回调接口,就是服务端干完活之后,要调你的这个实现

    ==================================================================================

    例子

    客户端代码:

     1 package com.mayi;
     2 
     3 public class CallBackFun implements ICallBack {
     4 
     5     
     6     //调用服务接口发送信息(正常应该是httpUtils调用别人的接口)
     7     public void sendMeg() {
     8         ServiceImpl ser = new ServiceImpl();
     9         ser.serviceSend(this);
    10     }
    11 
    12     
    13     //服务端发送成功后会调用这个方法,也就是回调(你调我的方法,在方法中有回调你的方法,至于回调中的逻辑由你自己实现)
    14     @Override
    15     public void callBack() {
    16         System.out.println("我是客户端回调函数");
    17     }
    18 public static void main(String[] args) {
    19     CallBackFun f =new CallBackFun();
    20     f.sendMeg();
    21 }
    22 }

    服务端代码1:定义接口:

    package com.mayi;
    
    public interface ICallBack {
    void callBack();
        
    }

    服务端代码2:此接口的实现的功能:

    package com.mayi;
    
    public class ServiceImpl {
    
        public void serviceSend(ICallBack cilent) {
    
            System.out.println("我是主体方法实现的功能");
    
            this.back(cilent);
        }
    
        private void back(ICallBack cilent) {
    
            cilent.callBack();
        }
    
    }

    如果大家有不同理解,欢迎指正!!!

  • 相关阅读:
    linux拷贝文件右键无粘贴功能
    Talk is cheap,show me the code!
    wireshark 分析mptcp序列号
    wireshark提取cwnd的语句
    (转)Wireshark查看重传包对应关系
    如何在Virtualbox中对Linux(Ubuntu)系统根分区扩容
    ns2中gnuplot不显示图像解决方法
    直接检测拥塞窗口大小的Tcpprobe
    mininet monitor
    mininet Red-ecn
  • 原文地址:https://www.cnblogs.com/flz-0429/p/9949407.html
Copyright © 2011-2022 走看看