趣味理解java事件處理邏輯

來源:互聯網
上載者:User

標籤:java事件處理   addActionListener   Applet   ActionEvent   

趣味理解java事件處理邏輯

目標:當有東東走過door,就要在wall上發布這個訊息。

分析:為達目標,顯然需要一個對象(事件監聽者)來監視door,當door有異動時,事件監聽者作出反應。

(1)我們請一隻dog來作door的事件監聽者。
我們在door邊,加一個事件監聽者dog,用java語言表達此意思也就是:
door.addActionListener(new dog());

(2)顯然一隻普通的dog不能勝任看門工作,要能勝任工作,必須具備看門業務技能,即必須 implements ActionListener。
所以我們要定義具備這種特徵dog類,用java語言表達此意思也就是:
class dog implements ActionListener
{...}

(3)看門狗最主要的行為和方法,是當door有事件發生,傳過來ActionEvent e事件對象時,自動採取行動,即actionPerformed(ActionEvent e),
採取什麼行動呢?就是:
public void actionPerformed(ActionEvent e)
{...}
哈哈,就看你怎麼給出三點了。

參考程式如下

import java.applet.;
import java.awt.
;
import java.awt.event.*;

public class yan22 extends Applet
{
TextField door,wall;
public void init()
{
door=new TextField(10);
wall=new TextField(20);
add(door);
add(wall);
door.addActionListener(new dog()); //讓狗對象監視text1
}

class dog implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
wall.setText("door有輸入!");
}
}
}

趣味理解java事件處理邏輯

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.