先看一段代码
| import java.util.LinkedList;
import java.util.List; public class OuterClass { private List listeners = new LinkedList(); public void addListeners(IListener listener) { this.listeners.add(listener); } private OuterClass outer = this; (1) private class InnterClass { public void publish() { //将事件发布出去 (2) for(int i=0;i < listeners.size();i++) { IListener listener = (IListener) listeners.get(i); listener.receiveEvent(outer); } } } public void execute() { InnterClass in = new InnterClass(); (3) in.publish(); } } public interface IListener { public void receiveEvent(OuterClass obj); } |

