我一直在使用AS3中的事件监听器,但似乎在
java中没有(除了图形组件).令人惊讶
问题是,我如何在java中实现我自己的事件监听器?也许有人以前做过这样的工作?
解决方法
您可以定义侦听器界面:
public interface EventListener { void fireEvent (Event e); }
然后在你的代码中:
EventListener lst = new EventListener() { @Override public void fireEvent (Event e) { //do what you want with e } } someObject.setListener(lst); someObject.somethingHappened();
然后在someObject(实际上你可能会持有一个listeners列表):
public class SomeObject { private EventListener lst; public void setListener (EventListener lst) { this.lst = lst; } public void somethingHappened () { lst.fireEvent(new Event("Something Happened")); } }