java回调机制(老板与员工例子)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java回调机制(老板与员工例子)相关的知识,希望对你有一定的参考价值。
网上看到一位老哥写的一个回调小列子,感觉写得真好,言简意赅。
学习并分享下我的理解。
废话不说,直接上代码。
异步调用时解决耗时操作问题(请求网络 硬盘资源等等。。)
在android中,button.setOnclickLister(new OnClickLister()
{
//异步调用,Lister监听而不用一直等待
}
/** * A程序员写了一段程序a,其中预留了回调函数接口,并封装好了该程序, * 程序员B让a调用自己的程序b中的一个方法, * 于是,他通过a中的接口回调自己b中的方法, * * a就相当于employee中的接口(办公室地址) 老板换了一茬又一茬,办公室的地址却不会改变。 * b中的方法:leader:excute() 或者 boss:excute(),即是 回调函数 * @author asus-000000 * */ public class Main { public static void main(String[] args) { Boss boss = new Boss(); Leader leader = new Leader(); Employee employee = new Employee(); employee.setCallBack(leader); employee.doSoming(); employee.setCallBack(boss); employee.doSoming(); } }
public class Boss implements CallBack{ @Override public void excute() { // TODO Auto-generated method stub System.out.println("Boss get your message!"); } }
public interface CallBack { public void excute(); }
public class Leader implements CallBack{ @Override public void excute() { // TODO Auto-generated method stub System.out.println("Leader get your message good job.."); } }
public class Employee { private CallBack callBack; public void setCallBack(CallBack callBack) { this.callBack=callBack; } public void doSoming() { System.out.println("Employee is work..."); System.out.println("work is done"); callBack.excute(); } }
以上是关于java回调机制(老板与员工例子)的主要内容,如果未能解决你的问题,请参考以下文章