我想做一个事件监听器,由eventobject继承,里面有自己的事件。
请问大家该如何编写代码,其逻辑关系如何!
请用代码演示一下,谢谢!
请问大家该如何编写代码,其逻辑关系如何!
请用代码演示一下,谢谢!
解决方案 »
- 关于线程的开启跟关闭。。
- 求教Java数组初始化
- 用java实现oracle数据库查询数据,结果用一个固定格式的表格形式打印,应该怎样实现? 用那些接口?
- 单击按钮【检测】弹出窗口,窗口中有文本框和标签,以及另外添加的一个按钮【确定提交】,如何才能使填写完文本框的数据后,点击【确定提交】按钮,先实现对数据的检测,如果数据符合要求则弹出【谢谢合作】的消息框,具体要求如下:。。。谢谢
- 新手求教啊。。关于Hadoop
- 请教一个关于ant的问题
- 关于程序导数据优化问题~!请教大侠~
- 怎样在程序中得到JNDI连接的数据库的用户名
- tomcat + jdk 打包成可执行文件的问题
- 我已经给了初值了怎么还会nullpointerexception?请大家帮忙!看看怎么改改?谢谢
- 求助:关于数组排序的问题
- 请问如何改变JTable表头的字体?
当Class1中的某个值变化时,就触发event1,然后写另外一个类Class2,监听Class1中的event1事件,public class A{
private Vector aListeners = new Vector();
private int value;
public int getValue(){
return value;
}
public void setValue(int newValue){
if(value!=newValue){
value = newValue;
AEvent evt= new AEvent(this,value);
//如果值改变的话,就触发事件
fireAEvent(evt);
}
}
public synchronized void addAListener(AListener a){
aListeners.addElement(a);
}
public synchronized void removeAListener(Alistener a){
aListeners.removeElement(a);
}
public void fireAEvent(AEvent evt){
Vector currentListeners = null;
synchronized(this){
currentListeners = (Vector)aListeners.clone();
}
for(int i =0;i<currentListeners.size();i++){
AListener listener = (AListener)currentListeners.elementAt(i);
listener.performed(evt);
}
}
}
//定义接口,当事件触发时调用
public interface AListener extends java.util.EventListener{
public abstract void performed(AEvent e);
}
//定义事件
public class AEvent extends EventObject{
private int value;
public AEvent(Object source){
this(source,null);
}
public AEvent(Object source,int newValue){
super(source);
value = newValue;
}
}
class B{
public B(){
A a = new A();
a.addAListener(new AListener(){
public performed(AEvent e){
//要处理的
}
});
}
}