欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java事件處理機制和適配器全面解析

 更新時間:2021年12月04日 11:17:25   作者:tuke_tuke  
這篇文章主要介紹了Java事件處理機制和適配器全面解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Java事件處理機制和適配器

最重要的是理解事件源,監(jiān)視器,處理事件的接口的概念。

1.事件源:是能夠產(chǎn)生時間的對象都可以叫事件源,比如文本框,按鈕,下拉列表之類的組件。

2.監(jiān)視器:事件源要產(chǎn)生事件,必須要有什么東西去監(jiān)視它,以便作出相應(yīng)啊,那就是監(jiān)視器,監(jiān)視器的作用是對事件源進行監(jiān)視,以便對發(fā)生的時間進行處理。

事件源通過相應(yīng)的方法注冊自己的監(jiān)聽器。比如addListener(監(jiān)聽器);

3.處理事件的接口:監(jiān)視器負(fù)責(zé)處理事件源發(fā)生的事件,監(jiān)視器是一個對象,為了處理事件源發(fā)生的事件,監(jiān)視器這個對象會自動調(diào)用一個方法來處理事件。被調(diào)用的這個方法就是所說的處理事件的接口中的方法。

java規(guī)定監(jiān)視器這個對象的類必須聲明實現(xiàn)相應(yīng)的接口, 即必須在類體重重寫接口中的所有方法,當(dāng)事件源發(fā)生事件事件時,監(jiān)視器就會自動調(diào)用被類重寫的接口方法。

處理事件示意圖

這里寫圖片描述

java常用的監(jiān)聽接口

這里寫圖片描述

此外還有MouseMotionListener,MouseWheelListener,WindowFocusListener, WindowStateListener,監(jiān)聽接口。

有時候監(jiān)聽接口中有很多抽象方法,在實現(xiàn)接口的時候,需要重寫所有的方法,但是我們經(jīng)常只會用到其中的一個或兩個,這無疑是一種勞累,多余。

于是就有了適配器類,出于簡化的目的,每個還有多個方法的的監(jiān)聽器接口都配有一個適配器類,這個類實現(xiàn)了接口中的所有方法,但是每個方法沒有做任何事情。

比如:

FocusAdapter,KeyAdapter,MouseAdapter,MouseMotionAdapter, WindowAdapter.

這就提供另一種方法,就是繼承適配器類,重寫其中的需要使用的方法,不必重寫全部的方法,簡單方便。

class A extends WindowAdapter{
   pubilc void windowClosing(WinwEvent e){//重寫WindowAdapter中的方法
        //處理時間代碼
   }
}

Java事件適配器的作用

適配器

其實從接口事件演變爾來的。相當(dāng)于觸發(fā)器,說簡單點,它就是一些動作 。

例如說 鼠標(biāo)的按下 點擊 還有鍵盤 等等。 適配器 就是實現(xiàn) 接口事件的類 不過 ,不是真的實現(xiàn) ,只是空實現(xiàn) ,沒有具體的方法體。 適配器主要是為了方便程序員操作 ,避免了代碼的重復(fù)性。只要一個對象或者屬性添加了這個適配器, 那么它就會監(jiān)視這對象或?qū)傩?。例如說一個按紐。

按紐添加一個MouseAdapter適配器, 并重寫里面的mouseClicked(MouseEvent e)方法。

public void mouseClicked(MouseEvent e) 
{
System.out.println("你點擊了鼠標(biāo)");
} 

當(dāng)你點擊按紐時 后臺就是打印 “你點擊了鼠標(biāo)”. 再說明白點 就相當(dāng)你給按紐 添加了一個鼠標(biāo)對象。 你通過 鼠標(biāo) 就可以 產(chǎn)生對應(yīng)的動作!

MouseAdapter實現(xiàn)了MouseListener,MouseWheelListener,MouseMotionListener接口,而方法都是為空,你可以重寫mouseClicked(MouseEvent e) 方法從而響應(yīng)鼠標(biāo)按鍵在組件上單擊事件,重寫mouseDragged(MouseEvent e)方法從而響應(yīng)鼠標(biāo)按鍵在組件上按下并拖動事件等等。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解Spring配置及事務(wù)的使用

    詳解Spring配置及事務(wù)的使用

    這篇文章主要介紹了詳解Spring配置及事務(wù)的使用,文中附含詳細(xì)的示例代碼說明,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • 一文詳解如何通過Java實現(xiàn)SSL交互功能

    一文詳解如何通過Java實現(xiàn)SSL交互功能

    這篇文章主要為大家詳細(xì)介紹了如何通過Java實現(xiàn)SSL交互功能,文中的示例代碼講解詳細(xì),對我們的學(xué)習(xí)或工作有一定的幫助,需要的可以參考一下
    2023-04-04
  • SpringBoot2.3集成ELK7.1.0的示例代碼

    SpringBoot2.3集成ELK7.1.0的示例代碼

    這篇文章主要介紹了SpringBoot2.3集成ELK7.1.0的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • SpringBoot實現(xiàn)自定義Starter的步驟詳解

    SpringBoot實現(xiàn)自定義Starter的步驟詳解

    在SpringBoot中,Starter是一種特殊的依賴,它可以幫助我們快速地集成一些常用的功能,例如數(shù)據(jù)庫連接、消息隊列、Web框架等。在本文中,我們將介紹如何使用Spring Boot實現(xiàn)自定義Starter,需要的朋友可以參考下
    2023-06-06
  • Windows下apache ant安裝、環(huán)境變量配置教程

    Windows下apache ant安裝、環(huán)境變量配置教程

    這篇文章主要介紹了Windows下apache ant安裝、環(huán)境變量配置教程,ANT的安裝很簡單,本文同時講解了驗證安裝是否成功的方法和使用方法實例,需要的朋友可以參考下
    2015-06-06
  • SpringMVC使用@PathVariable接收參數(shù)過程解析

    SpringMVC使用@PathVariable接收參數(shù)過程解析

    這篇文章主要介紹了SpringMVC使用@PathVariable接收參數(shù)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-10-10
  • java使用正則表達(dá)校驗手機號碼示例(手機號碼正則)

    java使用正則表達(dá)校驗手機號碼示例(手機號碼正則)

    這篇文章主要介紹了java使用正則表達(dá)校驗手機號碼示例,可校驗三個號碼段:13*、15*、18*,大家根據(jù)自己的需要增加自己的號碼段就可以了
    2014-03-03
  • Java 如何解決跨域問題

    Java 如何解決跨域問題

    這篇文章主要介紹了Java 如何解決跨域問題,幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下
    2021-03-03
  • Java樹形菜單的創(chuàng)建

    Java樹形菜單的創(chuàng)建

    這篇文章主要為大家詳細(xì)介紹了Java圖形用戶界面中樹形菜單的創(chuàng)建樹形菜單的創(chuàng)建,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2015-10-10
  • 詳解Java中的final關(guān)鍵字

    詳解Java中的final關(guān)鍵字

    這篇文章主要給大家介紹了關(guān)于Java中final關(guān)鍵字的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-06-06

最新評論