zoukankan      html  css  js  c++  java
  • java 接口回调

    学习自:http://blog.csdn.net/xiaanming/article/details/8703708/

    http://hellosure.iteye.com/blog/1130176 内容and评论都很精彩,现在只是学习了概念,以后在用到还需要继续研究。

    A类实现一个接口,接口中有回调方法f,类B有方法fun(),类A对象a有类B对象的引用b,a调用b的方法fun(),在这个方法fun()中又调用了a实现的接口里的方法f。

    在安卓中,线程run方法就是一个回调方法,start之后调用了run;android中消息处理一般都是接口回调的方式处理的。

    A类中调用B类中的某个方法C,然后B类中反过来调用A类中的方法D,D这个方法就叫回调方法

    比较经典的回调方式:

    • Class A实现接口CallBack callback
    • class A中包含一个class B的引用b 
    • class B有一个参数为callback的方法f(CallBack callback)
    • A的对象a调用B的方法 f(CallBack callback) ——A类调用B类的某个方法 C
    • 然后b就可以在f(CallBack callback)方法中调用A的方法 ——B类调用A类的某个方法D

    ps:遇到了匿名内部类的疑惑,关于list用具体类实现list接口,还有譬如OnClickListener,都是匿名内部类的实现,只是这个类没有名字,但是实现了该接口

    匿名内部类:
    1,匿名内部类其实就是内部类的简写格式。
    2,定义匿名内部类的前提:内部类必须是继承一个类或者实现接口。
    3,匿名内部类的格式:  new 父类或者接口(){定义子类的内容}
    4,其实匿名内部类就是一个匿名子类对象。 可以理解为带内容的对象。
    5,匿名内部类中定义的方法最好不要超过3个。

    note:接口或者规范能在开发过程中做到分离。

  • 相关阅读:
    windows根据端口号杀进程
    eclipse快捷键
    Parameter 'ids' not found. Available parameters are [array]
    java 根据ip获取地区信息(淘宝和新浪)
    unicode转中文
    Maven构建项目出现No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
    Spring Boot使用注解实现AOP
    java源码equals和hashCode
    SpringBoot+mybatis使用@Transactional无效
    第三十一节 用类对函数进行装饰
  • 原文地址:https://www.cnblogs.com/newcoder/p/5723316.html
Copyright © 2011-2022 走看看