java中如何让一个类变量改变时在另一个类中也能立刻发现这种改变?

就是网络编程中我把服务器类的某个变量改变之后,例如变true为false,客户端类里能意识到变成了false。

静态变量可以做到,因为静态变量在类加载的时候就被加载到内存中,分配内存地址,所有引用都指向该地址,所以任何地方修改它的值,其它类也立刻发现这种改变。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-25
可以,写一个守护线程,对服务器类的变量做监听,每隔200ms,做一下检查,如果有变化,将变化的值,通过网络传给客户端,就行了。追问

能给些具体代码吗

第2个回答  2013-05-25
为什么没人说委托呢?

参见设计模式中的观察者模式。当某个变量做改变时,直接通知其他对象即可!追问

能详细点吗,帮忙写点具体代码

追答

学设计模式去,在百度上搜索”观察者“模式,有一大堆代码!

本回答被提问者和网友采纳
第3个回答  2013-05-25
使用 volatile 修饰字段,保证每次拿到字段的都是最新的值,而不是拷贝追问

不行呀……两者不是一个类

第4个回答  2013-05-25
线程检测。追问

能详细点吗,写点具体代码

相似回答