11.5.6 类本身作为事件监听器类
11.5.6 类本身作为事件监听器类
类本身作为事件监听器类这种形式使用GUI界面类直接作为监听器类,可以直接在GUI界面类中定义事件处理器方法。这种形式非常简洁,也是早期AWT事件编程里比较喜欢采用的形式。但这种做法有如下两个缺点。
- 这种形式可能造成混乱的程序结构,
GUI界面的职责主要是完成界面初始化工作,但此时还需包含事件处理器方法,从而降低了程序的可读性 - 如果
GUI界面类需要继承事件适配器,将会导致该GUI界面类不能继承其他父类。
程序示例 使用GUI界面作为事件监听器
下面程序使用GUI界面类作为事件监听器类:
1 | import java.awt.*; |
上面程序让GUI界面类继承了WindowAdapter事件适配器,从而可以在该GUI界面类中直接定义事件处理器方法:windowClosing。当为某个组件添加该事件监听器对象时,直接使用this作为事件监听器对象即可。