知识大全 浅析Java语言的事件处理快捷回复

Posted 事件

篇首语:道德可以弥补能力的不足,能力却难以掩盖道德的缺陷。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 浅析Java语言的事件处理快捷回复相关的知识,希望对你有一定的参考价值。

浅析Java语言的事件处理快捷回复  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  在JAVA程序设计中 事件的处理是非常重要的 尤其是在需要自定义事件和设计JavaBean时 对事件的处理过程有一个完整的认识对于编程是很有帮助的

  下面用一个演示性的例子来说明事件及其处理过程

  一 事件的组成

  如果想要自定义一个事件 则必须提供一个事件的监听接口以及一个事件类 在JAVA中监听接口继承java util EventListener 事件类继承java util EventObject 很多基本的事件在编程环境中都已经提供可以很方便使用 但是在自定义事件中必须要要了解这些

  下面是一个事件类的代码 事件类可以向用户处理程序提供被监听类的信息

  import java util *;

  public class PropertyEvent extends EventObject

  public PropertyEvent()

  

  下面是监听接口的代码

  import java util *;

  public interface PropertyListener extends EventListener

  public void propertyChanged(PropertyEvent propertyEvent);

  

  二 事件的处理机制

  下面是一段简要的被监听类代码 通过代码分析事件处理过程

  import java util *;

  public class Exam

  private int property;

  //listeners用来存放已注册的监听对象

  private Set listeners= new HashSet();

  

  public void addListener(PropertyListener propertyListener)

  //listeners必须保证只能被一个线程访问

  synchronized(listeners)

  listeners add(propertyListener);

  

  

  public void firePropertyChange()

  Iterator iterator;

  synchronized(listeners)

  //将listeners中的类名放到iterator

  iterator = new HashSet(erator();

  

  //创建事件类

  PropertyEvent propertyEvent = new PropertyEvent();

  while(iterator hasNext())

  PropertyListener propertyListener = (propertyListener) iterator next();

  //调用用户的事件处理程序

  propertyListener propertyChanged(propertyEvent);

  

  

  

  当属性值发生变化时 首先进行内部处理调用firePropertyChange方法 产生一个事件对象然后用事件对象为参数来调用用户的事件处理程序

  三 事件处理的使用

   基本用法

  public Exam exam;

  exam addListener(this);

  public void propertyChange(PropertyEvent event)

  注 exam是被监听对象 this为监听对象 是已经实现了接口方法的当前类 addListener

  将当前类注册到listeners

   一个被监听对象可以有多个监听对象

  exam addListener(listener );

  exam addListener(listener );

  这样当exam的property发生变化时 actionListener 和actionListener 的处理程序都会

  被调用 当然listener 和listener 必须都是已实现接口方法的类

   被监听的对象也可以是实现了方法的接口

  exam addListener(

  new PropertyListener()

  //用户定义事件处理过程

  public void propertyChange(PropertyEvent event)

  

  

  );

cha138/Article/program/Java/hx/201311/26740

相关参考

知识大全 浅析Java与C#的事件处理机制(二)

浅析Java与C#的事件处理机制(二)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  \\在程序

知识大全 ASP.NET控件开发基础之复合控件事件处理浅析

ASP.NET控件开发基础之复合控件事件处理浅析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 java的事件处理

  在JAVA程序设计中事件的处理是非常重要的尤其是在需要自定义事件和设计JavaBean时对事件的处理过程有一个完整的认识对于编程是很有帮助的    下面用一个演示性的例子来说明事件及其处理过程  

知识大全 java内省机制

  内省是Java语言对Bean类属性事件的一种处理方法(也就是说给定一个javabean对象我们就可以得到/调用它的所有的get/set方法)  例如类A中有属性name那我们可以通过getName

知识大全 探讨与比较Java和.NET的事件处理框架

探讨与比较Java和.NET的事件处理框架  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!事件驱动模

知识大全 为Java应用程序添加退出事件处理

为Java应用程序添加退出事件处理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一个完整的Ja

知识大全 Java Swing中的键盘事件处理

JavaSwing中的键盘事件处理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在javaSw

知识大全 Java中可复用事件处理的设计与实现代码

Java中可复用事件处理的设计与实现代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  目前面向

知识大全 Java图形界面事件监听处理之四种方法

Java图形界面事件监听处理之四种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  我自年上大

知识大全 Java语言中字符的处理

Java语言中字符的处理  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  摘要本文主要讨论了Jav