zoukankan      html  css  js  c++  java
  • 简单解析三种JAVA调用方式-同步,异步,回调

      模块之间有三种调用方式:

      1、同步调用

      同步调用很简单,就是直接调用方法B,必须等到方法A执行完才会继续执行原程序。

      2、异步调用

      异步调用,就是在A程序中给程序B一个实现,当B运行的时候,在满足条件的情况下能够调用A程序中的实现。举例说明

    public interface Food
    {
    
          void eat();
    
    }
    
    public class Cow implements Food
    {
             @override
            void eat()
            {
                  syso("eat cow");
             }
                        
    }
    
    public class Tiger
    {
            private Food food;
            public void setFood(Food  food)
            {
                   this.food =food;
            }
            void hungry()
            {
                 syso("hungry");
                 if(eat!=null)food.eat();
            }
            
              public void static main(String[] args)
             {
                       Tiger tiger=new Tiger();
                       tiger.setFood(new Cow());
                       tiger.hungry();
             }
        
    }

        老虎饿了,假如有食物就可以吃它,现在牛就相当于程序A 实现了这个接口,

               老虎就相当于程序B,里面包含这个接口,

               现在将牛送到老虎的嘴边,就是setFood

              老虎饿了就要吃牛了,这个时候就调用了A程序实现的这个接口。

      3、回调

      这个写过android程序的肯定会非常熟悉啦,回调其实就是上面两个的组合。

      比如一般我们在实例化一个Button类,会给它设置一个OnClickListener,这个就相当于上面的异步调用,但是这个异步调用又是由Button自己引发的,button的                     performClick()模拟点击事件然后会执行自定义的OnClickListener。

  • 相关阅读:
    阿里云centos7.2自己安装mysql5.7远程不能访问解决方案
    Delphi中的线程类
    简单说说Delphi中线程的释放
    delphi杀进程的两种方式
    delphi备份恢复剪切板(使用了GlobalLock API函数和CopyMemory)
    Delphi 7下使用Log4Delphi 0.8日志组件
    Demo+在Linux下运行(CentOS7+dotnetcore sdk)
    反射
    解析表达式树
    JS面向对象编程之:封装、继承、多态
  • 原文地址:https://www.cnblogs.com/maydow/p/4740831.html
Copyright © 2011-2022 走看看