举个JAVA自定义事件类型的例子 谢谢 越简单越好 越简单越好 java的自定义事件能不能这样写?:A类.发布(C.登陆了) ;B类.监听(C.登陆了,登陆相关()) 登陆相关() { } ;C类 "登陆了"; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1,先自定义一个事件public class MyEvent extends java.util.EventObject{ public MyEvent(Object source) { super(source); }}2,再自定义一个监听器public class MyListener implements java.util.EventListener{ //这里是当事件发生后的响应过程 public void EventActivated(MyEvent me) { System.out.println("事件已经被触发"); }}3,以下这个类为触发事件的事件源public class MyObject { private Vector vectorListeners=new Vector(); public synchronized void addMyListener(MyListener ml) { vectorListeners.addElement(ml); } public synchronized void removeMyListener(MyListener ml) { vectorListeners.removeElement(ml); } protected void activateMyEvent() { Vector tempVector=null; MyEvent e=new MyEvent(this); synchronized(this) { tempVector=(Vector)vectorListeners.clone(); for(int i=0;i<tempVector.size();i++) { MyListener ml=(MyListener)tempVector.elementAt(i); ml.EventActivated(e); } } } //定义一个公用方法用于触发事件 public void test() { activateMyEvent(); } } 【求助】Java线程池入门问题【在线急等】 SWT在shell上画多个Canvas,怎么实现?我用循环画多个,显示的却只有最后一个 请问个的问题 setAppearance的问题 JFreechart中如何控制纵轴的最大表示尺度 怎样将 GBK 编码的汉字转换成为 UTF-8 编码的汉字? 谁能帮分析一下这个很小的程序??? 很菜的问题 关于时间问题 请教:中文String在substring时的问题! applet是否可以操作cookie? .NET 和java定义的抽象类不同 关于byte[]转Float
public MyEvent(Object source)
{
super(source);
}
}
2,再自定义一个监听器public class MyListener implements java.util.EventListener{
//这里是当事件发生后的响应过程
public void EventActivated(MyEvent me)
{
System.out.println("事件已经被触发");
}
}3,以下这个类为触发事件的事件源public class MyObject {
private Vector vectorListeners=new Vector();
public synchronized void addMyListener(MyListener ml)
{
vectorListeners.addElement(ml);
}
public synchronized void removeMyListener(MyListener ml)
{
vectorListeners.removeElement(ml);
}
protected void activateMyEvent()
{
Vector tempVector=null;
MyEvent e=new MyEvent(this);
synchronized(this)
{
tempVector=(Vector)vectorListeners.clone();
for(int i=0;i<tempVector.size();i++)
{
MyListener ml=(MyListener)tempVector.elementAt(i);
ml.EventActivated(e);
}
}
}
//定义一个公用方法用于触发事件
public void test()
{
activateMyEvent();
}
}