1. 程式人生 > >15.1-全棧Java筆記:Java事件模型是什麽?事件控制的過程有哪幾步??

15.1-全棧Java筆記:Java事件模型是什麽?事件控制的過程有哪幾步??

java

應用前邊兩節上一章節的內容,大家可以完成一個簡單的界面,但是沒有任何的功能,界面完全是靜態的,如果要實現具體功能的話,必須要學習事件模型。


事件模型簡介及常見事件模型

對於采用了圖形用戶界面的程序來說,事件控制是非常重要的。

一個源(事件源)產生一個事件並把它(事件對象)送到一個或多個監聽器那裏,監聽器只是簡單地等待,直到它收到一個事件,一旦事件被接收,監聽器將處理這些事件。


一個事件源必須註冊監聽器以便監聽器可以接收關於一個特定事件的通知。

每種類型的事件都有其自己的註冊方法,一般形式為:

void addTypeListener(TypeListener e);


註意:

註冊事件的方法名並不真的是addTypeListener,其中的Type是事件類型,根據不同的事件追加不同類型的監聽,如:追加按鈕按下事件的添加監聽方法為:addActionListener(ActionEvent e),而e是一個事件監聽器的引用。


事件控制的過程

事件控制過程可以分為以下四步:

1. 監聽器對象屬於一個類的實例,這個類實現了一個特殊的接口,名為“監聽者接口”(Listener interface)。

2. 事件源是一個對象,它可以註冊一個或多個監聽器對象,以便向其發送事件對象。

3. 事件源在發生事件時向所有註冊的監聽器發送事件對象。

4. 監聽器對象根據事件對象中封裝的信息來確定如何響應這個事件。

技術分享

如果覺得這個過程比較抽象,那麽我們看看這樣一個場景:在城市的十字路口上為了監控交通違章,那麽在路口上(事件源)就會安裝一個監控攝像頭(監聽器對象),這個監控攝像頭在有違章發生時(事件觸發時)會自動捕獲違章,然後傳達到監控大廳,監控大廳根據違章情況作出相應的處理(事件響應,也可以說是事件處理,就是發生事件後做什麽處理方式)。


那麽我們不難發現這樣一個事實:出現不同的事件需要用不同的事件類來捕獲。如圖1所示,為常用的事件類的體系結構。

我們再來看看事件類型的具體說明,如表1所示。

技術分享

下節我們會對幾種常用的事件類型進行詳細介紹。




「全棧Java筆記」是一部能幫大家從零到一成長為全棧Java工程師系列筆記。筆者江湖人稱 Mr. G,10年Java研發經驗,曾在神州數碼、航天院某所研發中心從事軟件設計及研發工作,從小白逐漸做到工程師、高級工程師、架構師。精通Java平臺軟件開發,精通JAVAEE,熟悉各種流行開發框架。


筆記包含從淺入深的六大部分:

A-Java入門階段

B-數據庫從入門到精通

C-手刃移動前端和Web前端

D-J2EE從了解到實戰

E-Java高級框架精解

F-Linux和Hadoop


本文出自 “全棧Java筆記” 博客,請務必保留此出處http://javanew.blog.51cto.com/12931675/1956779

15.1-全棧Java筆記:Java事件模型是什麽?事件控制的過程有哪幾步??