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();
        }
    
    }

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

  • 相关阅读:
    Fragment中获取Activity的Context (转)
    raw cannot be resolved or is not a field解决办法
    商业分析07_06分布情况分析
    商业分析07_04漏斗分析
    商业分析07_03数据涨跌异动如何处理
    商业分析07_02多维度拆解
    商业分析07_01对比分析
    商业分析07_00概述 数据分析
    商业分析06选择数据工具
    商业分析05如何选取数据指标
  • 原文地址:https://www.cnblogs.com/flz-0429/p/9949407.html
Copyright © 2011-2022 走看看