java 接口回调实例详解

发布时间 - 2026-01-11 02:25:14    点击率:

java 接口回调实例详解

首先官方对接口回调的定义是这样的,所谓回调:就是A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法。这样听起来有点绕,我们可以这么理解接口回调:比如我们想知道隔壁老王啥时候回家?但是我们有自己的事情做不能一直监视着老王,那么我们可以雇员小区的保安来完成这个任务,当老王回家口,保安就给我们打电话告诉我们,老王回来了!这样就完成了一个事件的传递;

首先我们定义了一个接口:

public interface DynamicMessageListener { 
/** 
 * 获取网络数据, 
 * @param bean bean 对象 
 */ 
void getDynamicData(List<DynamicBean.DataBean> bean, boolean isMore); 
} 

    定义一个类实现这个接口:

public class DynamicFragment extends Fragment implements DynamicMessageListener { 
//初始化监听者 
  private DynamicMessageListener listener; 
/** 
   * 获取网络数据 
   * 
   * @param bean bean 对象 
   */ 
 
  @Override 
  public void getDynamicData(List<DynamicBean.DataBean> bean, boolean isMore) { 
    if (bean != null && bean.size() > 0) { 
      if (!isMore) { 
        adapter = new DynamicAdapter(mContext, bean, this, classID); 
        friendLv.setAdapter(adapter); 
        adapter.setListener(this); 
        LLog.e("activity------有数据"); 
      } else { 
        adapter.setData(bean); 
      } 
 
    } 
 
  } 
} 

    在网络请求层调用上面的方法:

public class DynamicModel extends BaseModel { 
 
 
  private Context mContext; 
  private NetUtils net; 
  private DynamicMessageListener listener; 
 
  public DynamicModel(Context mContext, DynamicMessageListener listener) { 
    this.mContext = mContext; 
    net = NetUtils.getInstance(); 
    this.listener = listener; 
  } 
/** 
   * 加载网络数据, 
   * @param url  网络url 
   * @param params 请求网络携带的参数 
   */ 
  public void loadData(String url, RequestParams params) { 
    net.sendGetRequest(url, params, new NetUtils.NetUtilsCallBack() { 
      @Override 
      public void getNetdata(String json) { 
        if (json != null) { 
          Gson gson = new Gson(); 
          DynamicBean bean = gson.fromJson(json, DynamicBean.class); 
          List<DynamicBean.DataBean> data = bean.getData(); 
          listener.getDynamicData(data, false); 
          if(data ==null||data.size() <=0 ){ 
            listener.friendsNoData(false); 
            LLog.e("没有数据-----"); 
          } 
        } 
      } 
      @Override 
      public void loadError(int a) { 
        showError(a, mContext); 
      } 
    }); 
  } 
} 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# java  # 接口回调  # 接口回调的详解  # 回调  # Java 是如何利用接口避免函数回调的方法  # Java按时间梯度实现异步回调接口的方法  # Java中的接口回调实例  # 深入了解Java接口回调机制  # 基于Java接口回调详解  # Java接口回调的本质详解  # Java接口的回调机制的实现  # Java接口回调和方法回调的简单实现步骤  # 老王  # 类中  # 我们可以  # 自己的  # 是这样  # 希望能  # 想知道  # 告诉我们  # 谢谢大家  # 听起来  # 就叫  # 就给  # 来完成  # 完成了  # 加载  # boolean  # isMore  # nbsp  # DynamicBean 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: HTML5段落标签p和br怎么选_文本排版常用标签对比【解答】  laravel怎么配置和使用PHP-FPM来优化性能_laravel PHP-FPM配置与性能优化方法  Android中AutoCompleteTextView自动提示  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Laravel Admin后台管理框架推荐_Laravel快速开发后台工具  linux写shell需要注意的问题(必看)  Laravel怎么在Blade中安全地输出原始HTML内容  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  Laravel中间件如何使用_Laravel自定义中间件实现权限控制  如何用AWS免费套餐快速搭建高效网站?  Laravel如何实现数据库事务?(DB Facade示例)  常州企业网站制作公司,全国继续教育网怎么登录?  如何在阿里云虚拟服务器快速搭建网站?  Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】  魔毅自助建站系统:模板定制与SEO优化一键生成指南  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  如何在云主机上快速搭建多站点网站?  如何在Windows 2008云服务器安全搭建网站?  Java遍历集合的三种方式  Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践  使用豆包 AI 辅助进行简单网页 HTML 结构设计  利用python获取某年中每个月的第一天和最后一天  如何在万网主机上快速搭建网站?  Android实现代码画虚线边框背景效果  焦点电影公司作品,电影焦点结局是什么?  Python结构化数据采集_字段抽取解析【教程】  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  详解阿里云nginx服务器多站点的配置  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  Python文件流缓冲机制_IO性能解析【教程】  Windows11怎样设置电源计划_Windows11电源计划调整攻略【指南】  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  济南网站建设制作公司,室内设计网站一般都有哪些功能?  Laravel如何实现全文搜索功能?(Scout和Algolia示例)  Laravel如何使用Collections进行数据处理?(实用方法示例)  如何在阿里云虚拟主机上快速搭建个人网站?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Python文本处理实践_日志清洗解析【指导】  如何用景安虚拟主机手机版绑定域名建站?  油猴 教程,油猴搜脚本为什么会网页无法显示?  JavaScript模板引擎Template.js使用详解  南京网站制作费用,南京远驱官方网站?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南