Java在一个A类中监听另一个B类里面一个整型变量值的变化

B类中值一变化A就得到这个变化的值,我知道应该是用观察者模式来实现,但不知道具体的方法

public class B{
private int a;
private OnAUpdateListener onAUpdateListener;

public void setOnAUpdateListener(OnAUpdateListener onAUpdateListener){
    this.onAUpdateListener = onAUpdateListener;
}

public void setA(int a){
    this.a = a;
}

public interface OnAUpdateListener{
    void updateListener(int a);
}

}

public class A implements OnAUpdateListener{
public static void main(String[] args){
B b = new B();
b.setOnAUpdateListener(this);
}

void updateListener(int a){
    // B中的变量发生了变化
}

}

观察者模式在Java类库中体现就是监听器,本质上是被监听对象维护一个所有注册监听的对象列表,一旦自己的某些信息发生变化后就通知列表中所有的
观察者,而观察者本身也关联一个被观察的对象,A和B是一对多的关联关系。
参考实例如下:http://www.cnblogs.com/mengdd/archive/2013/02/07/2908929.html
可以看下java源码中监听器相关的类,JDK中有很多设计模式的真实运用的类的。

http://blog.csdn.net/evankaka/article/details/43195971

可以监听
也可以把B做成单例
A每次取的时候就是最新的值了

使用观察者模式就可以实现

监听么,定义监听器,然后在B类set方法里面执行监听器的方法