技术栈

2019-02-12——方法调用

2019-02-12  本文已影响0人  烟雨乱平生

软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。

public class A {

    private B b;

    public A(B b){
        this.b = b;
    }
    public void ma(){
        b.mb();
        System.out.println("this is A.ma()");
    }
}




public class B {
    public void mb(){
        System.out.println("this is B.mb()");
    }
}
public class A {

    private B b;

    public A(B b){
        this.b = b;
    }
    public void ma(){
        new Thread(() -> b.mb()).start();
        System.out.println("this is A.ma()");
    }
}




public class B {
    public void mb(){
        System.out.println("this is B.mb()");
    }
}
public class A {

    private B b;

    public A(B b){
        this.b = b;
    }
    public void ma(){
        b.mb(this);
        System.out.println("this is A.ma()");
    }

    public void callback(){
        System.out.println("this is A.callback()");
    }
}




public class B {
    public void mb(A a){
        a.callback();
        System.out.println("this is B.mb()");
    }
}
public class A {

    private B b;

    public A(B b){
        this.b = b;
    }
    public void ma(){
        new Thread(()->b.mb(this)).start();
        System.out.println("this is A.ma()");
    }

    public void callback(){
        System.out.println("this is A.callback()");
    }
}




public class B {
    public void mb(A a){
        System.out.println("this is B.mb()");
        a.callback();
    }
}

上一篇 下一篇

猜你喜欢

热点阅读