潘國榮



摘要:事件是Java Swing可視化開發中一個非常重要和基礎的概念。該文就Swing組件編程中事件的概念、事件處理委托模型、常用事件及主要響應方法作一論述。
關鍵詞: Java;事件;響應方法
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2018)29-0125-02
1事件概念
在Java圖形用戶界面中,當用戶進行點擊命令按鈕、移動鼠標、按下或彈出鍵、關閉窗體等操作時,都會產生事件。產生事件的對象是事件源,通常就是各個組件,例如按鈕。利用鼠標、鍵盤對事件源的操作統稱為事件。對這些事件做出響應的程序,稱為事件處理器。
2事件處理委托模型
在Java中,事件源產生事件之后,并不像其他編程技術那樣由事件源對象直接處理事件,而是委托給“第三方”進行處理,這個“第三方”就是Java中的事件監聽器對象。這種處理事件的方式,稱為委托事件模型,它充分利用了接口設計的特點,使得事件源和事件類設計和事件處理器類分離。事件監聽器能維護事件源的信息,能“監聽”、“遍歷”事件源產生的事件,能找到并執行相應的事件響應方法。
3 主要事件
4事件處理的主要步驟
按照前述分析,在Java中,事件處理的主要步驟有3步:
1) 定義一個類,使該類實現事件對應的監聽器接口;
2) 對事件源 (組件)產生的事件進行注冊監聽;
3) 重寫(覆蓋) 監聽器接口中的事件處理方法。
事件響應方法可以在本類、外部類實現,也可以在內部類、匿名類中實現。通過內部類的方法,內部類可以是匿名類,也可以不是匿名類,這種方法不需要聲明事件監聽器接口。
5 結束語
通過上述例程代碼可以看出,編制事件處理的響應方法還是非常靈活的,通常情況下,如果程序要處理的比較復雜,可以在單獨定義的外部類中實現,如果程序要處理的比較簡單,在自身類中實現可能更為方便,初學者及開發人員可以根據需要進行選擇。
參考文獻:
[1] 劉德山, 金百東. Java程序設計[M]. 北京: 科學出版社, 2012.
[2] 李鐘尉, 陳丹丹. Java項目開發案例全程實錄[M]. 北京: 清華大學出版社, 2011.
【通聯編輯:光文玲】