java事件处理实验报告.docx

上传人:b****8 文档编号:9134294 上传时间:2023-05-17 格式:DOCX 页数:8 大小:18.98KB
下载 相关 举报
java事件处理实验报告.docx_第1页
第1页 / 共8页
java事件处理实验报告.docx_第2页
第2页 / 共8页
java事件处理实验报告.docx_第3页
第3页 / 共8页
java事件处理实验报告.docx_第4页
第4页 / 共8页
java事件处理实验报告.docx_第5页
第5页 / 共8页
java事件处理实验报告.docx_第6页
第6页 / 共8页
java事件处理实验报告.docx_第7页
第7页 / 共8页
java事件处理实验报告.docx_第8页
第8页 / 共8页
亲,该文档总共8页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

java事件处理实验报告.docx

《java事件处理实验报告.docx》由会员分享,可在线阅读,更多相关《java事件处理实验报告.docx(8页珍藏版)》请在冰点文库上搜索。

java事件处理实验报告.docx

java事件处理实验报告

竭诚为您提供优质文档/双击可除

java事件处理实验报告

  篇一:

组件与事件编程-Java实验报告(三)

  甘肃政法学院

  本科学生实验报告(三)

  姓名贾燚学院计算机科学学院专业信息管理与信息系统实验课程名称Java实用教程试验时间20XX年10月4日指导教师及职称李瑞生实验成绩开课时间20XX学年第2学期

  甘肃政法学院实验管理中心印制

  篇二:

JAVA异常处理实验报告

  JAVA语言程序设计

  实验报告

  实验三

  实验题目:

异常处理

  指导老师:

卢照

  专业班级:

计算机科学与技术系1106班姓名:

李锋(20XX100645)

  20XX年4月20日

  一、实验名称:

异常处理

  二、实验目的:

  1.掌握异常处理机制的运作

  2.掌握处理异常的几个子句:

try?

catch..finally、thorws和throw3.掌握字符串类的相关操作

  三、实验内容:

  1.编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数

  组元素,使其产生ArrayIndexoutofboundsexception异常。

在catch子句里捕获此异常对象,并且打印“数组越界”信息,加一个finally子句,打印一条信息以证明这里确实得到了执行。

2.

  给定一个字符串,将字符串中的所有大写字母变成小写字母,数字用0

  来代替,其他符号用#代替。

  四、实验代码

  1.exceptionDemo.javaclassexceptionDemo{

  publicstaticvoidmain(string[]args){

  int[]arr=newint[]{13,24,1,53,24};try{

  intnum=arr[5];}

  catch(ArrayIndexoutofboundsexceptione){

  system.out.println("数组越界啦!

");}

  finally{

  system.out.println("此处代码一定会执行的--finally");}}}

  运行结果:

  2.stringTest.javaclassstringTest{

  publicstaticvoidmain(string[]args){

  stringstr="Dfs分手dsA吧25J奋45斗";system.out.println("原字符串=="+str);stringbuffersb=newstringbuffer();for(inti=0;i  charch=str.charAt(i);if(ch>=AZ){}

  elseif(ch>=az){

  sb.append(ch);

  sb.append(character.toLowercase(ch));

  }elseif(ch>=49

  }else{

  sb.append("#");

  }

  }

  }

  }

  system.out.println("转换后=="+sb);

  运行结果:

  五、实验总结:

  通过本次实验,熟悉掌握了Java的异常机制,try{}catch(){}finally{}的执行过程。

通过new一个数组,从而通过数组的下标取出内容,当下标不合法时就会出现数组下标越界异常。

通过catch捕获异常,并对异常作出处理。

再通过将一个字符串的大写字母转换成小写字母,练习string的常用方法。

同时了解了字符串的使用。

  这仅仅是简单异常的处理,必须更进一步对异常熟悉。

还有对字符串的其他方法进行练习并熟悉掌握。

还需要在课下多多练习,熟悉它们。

  篇三:

实验四Java事件处理(汽院含答案)

  实验四Java事件处理

  实验目的

  1.掌握Java语言中的事件处理方法

  2.掌握Java语言中事件源、监视器和处理事件的接口的概念

  实验导读

  1.Java事件处理简介

  学习组件除了了解组件的属性和功能外,学习组件除了了解组件的属性和功能外,一个更重要的方面是学习怎样处理组件上发生的界面事件。

当用户在文本框中输入文本后按enter键、单击按钮、在一个下拉列表框中选择一个条目等操作时,都发生界面事件。

在学习处理事件时,必须很好地掌握事件源、监视器、处理事件的接口这三个概念。

?

事件源:

  能够产生事件的对象都可以成为事件源,如文本框、按钮、下拉式列表等。

也就是说,事件源必须是一个对象,而且这个对象必须是Java认为能够发生事件的对象。

?

监视器:

  需要一个对象对事件源进行监视,以便对发生的事件作出处理。

事件源通过调用相应的方法将某个对象作为自己的监视器。

例如,对于文本框,这个方法是:

addActionListener(监视器);

  对于获取了监视器的文本框,当文本框获得输入焦点之后,如果用户按enter键,Java运行系统就自动用Actionevent类创建一个对象,即发生了Actionevent事件。

也就是说,事件源获得监视器后,相应的操作就会导致事件的发生,并通知监视器,监视器就会做出相应的处理。

  ?

处理事件的接口:

  监视器负责处理事件源发生的事件。

监视器是一个对象,为了让监视器这个对象能对事件源发生的事件进行处理,创建该监视器对象的类必须声明实现相应的接口,即必须在类体中给出该接口中所有方法的方法体,那么当事件源发生事件时,监视器就自动调用类实现的某个接口中的方法。

  2.文本框上的Actionevent事件

  java.awt.event包中提供了许多事件类和处理各种事件的接口。

对于文本框,这个接口的名字是ActionListener,这个接口中只有一个方法:

  publicvoidactionperformed(Actionevente)

  当在文本框中输入字符并按enter键时,java.awt.event包中的Actionevent类自动创建一个事件对象,并将它传递给actionperformed(Actionevente)方法中的参数e,监视器自动调用这个方法对发生的事件做出处理。

  所以,称文本框这个事件源可以发生Actionevent类型事件。

为了能监视到这种类型的事件,事件源必须使用addActionListener方法获得监视器;创建监视器的类必须实现接口ActionListener。

只要学会了处理文本框这个组件上的事件,其他事件源上的事件的处理也就很容易学会,所不同的是事件源能发生的事件类型不同,所使用的接口不同而已。

  Actionevent类有如下常用的方法:

  ?

publicobjectgetsource()Actionevent对象调用该方法可以获取发生Actionevent事

  件的事件源对象的引用,即getsource()方法将事(:

java事件处理实验报告)件源上转型为object对象,并返回这个上转型对象的引用。

  ?

publicstringgetActioncommand()Actionevent对象调用该方法可以获取发生

  Actionevent事件时,和该事件相关的一个命令字符串,对于文本框,当发生Actionevent事件时,文本框中的文本字符串就是和该事件相关的一个命令字符串。

  3.选择框和下拉列表上的Itemevent事件

  选择框从未选中状态变成选中状态或从选中状态变成未选中状态时、下拉列表选项列表中选中某个选项时就发生Itemevent事件,即Itemevent类自动创建一个事件对象。

  发生Itemevent事件的事件源获得监视器的方法是addItemListener(监视器)。

处理Itemevent事件的接口是ItemListener,创建监视器的类必须实现ItemListener接口,该接口中只有一个方法。

当选择框发生Itemevent事件时,监视器将自动调用接口方法:

  itemstatechanged(Itemevente)

  对发生的事件进行处理。

  4.鼠标事件

  任何组件上都可以发生鼠标事件,如:

鼠标进入组件、退出组件、在组件上方单击鼠标、拖动鼠标等都触发组件发生鼠标事件,也就是说,组件可以成为发生鼠标事件的事件源。

  使用mouseListener接口可以处理5种操作触发的鼠标事件:

  

(1)在事件源上按下鼠标键。

  

(2)在事件源上释放鼠标键。

  (3)在事件源上击鼠标键。

  (4)鼠标进入事件源。

  (5)鼠标退出事件源。

  鼠标事件的类型是mouseevent,即当发生鼠标事件时,mouseevent类自动创建一个事件对象。

  mouseListener接口中的方法:

  

(1)mousepressed(mouseevent)负责处理在组件上按下鼠标触发的鼠标事件,当在组件上按下鼠标时,监视器将自动调用接口中的这个方法对事件作出处理。

  

(2)mouseReleased(mouseevent)负责处理在组件上释放鼠标触发的鼠标事件,当在

  组件上释放鼠标时,监视器将自动调用接口中的这个方法对事件作出处理。

  (3)mouseentered(mouseevent)负责处理鼠进入组件触发的鼠标事件,当鼠标进入组件上方时,监视器将自动调用接口中的这个方法对事件作出处理。

  (4)mouseexited(mouseevent)负责处理鼠标离开组件触发的鼠标事件,当鼠标离开组件时,监视器自动调用接口中的这个方法对事件作出处理。

  (5)mouseclicked(mouseevent)负责处理在组件上单击或连击鼠标触发的鼠标事件,当单击或连击鼠标时,监视器自动调用接口中的这个方法对事件作出处理。

  mousemotionListener接口:

  使用mousemotionListener接口可以处理以下两种操作触发的鼠标事件:

  

(1)在事件源上拖动鼠标。

  

(2)在事件源上移动鼠标。

  mousemotionListener接口中有如下方法:

  

(1)mouseDragged(mouseevent)负责处理在组件上拖动鼠标触发的鼠标事件,当在组件上拖动鼠标时,监视器调用接口中的这个方法对事件作出处理。

  

(2)mousemoved(mouseevent)负责处理在组件上运动鼠标触发的鼠标事件,当在组件上运动鼠标时,监视器调用接口中的这个方法对事件作出处理

  5.焦点事件

  组件可以触发焦点事件。

组件可以使用

  publicvoidaddFocusListener(FocusListenerlistener)

  增加焦点事件监视器。

  当组件获得焦点监视器后,如果组件从无输入焦点变成有输入焦点或从有输入焦点变成无输入焦点都会触发Focusevent事件。

创建监视器的类必须要实现FocusListener接口,该接口有两个方法:

  publicvoidfocusgained(Focusevente)

  publicvoidfocusLost(Focusevente)

  当组件从无输入焦点变成有输入焦点触发Focusevent事件时,监视器调用类实现的接口方法:

focusgained(Focusevente);当组件从有输入焦点变成无输入焦点触发Focusevent事件时,监视器调用类实现的接口方法:

focusLost(Focusevente)。

  用户通过单击组件可以使得该组件有输入焦点,同时也使得其他组件变成无输入焦点。

一个组件也可以调用

  publicbooleanrequestFocusInwindow()

  方法获得输入焦点。

  6.键盘事件

  当按下、释放或敲击键盘上一个键时就发生了键盘事件,在Java1.2事件模式中,必须

  要有发生事件的事件源。

当一个组件处于激活状态时,敲击键盘上一个键就导致这个组件上发生了键盘事件。

  事件源使用addKeyListener方法获得监视器。

  使用KeyListener接口处理键盘事件.接口KeyListener中有3个方法:

  publicvoidkeypressed(Keyevente),

  publicvoidkeyTyped(Keyevente),

  publicvoidKeyReleased(Keyevente)。

  当按下键盘上某个键时,监视器就会发现,然后keypressed方法会自动执行,并且Keyevent类自动创建一个对象传递给keypressed方法中的参数e。

keyTyped方法是keypressed和KeyReleased方法的组合,当键被按下又释放时,keyTyped方法被调用。

  用Keyevent类的publicintgetKeycode()方法,可以判断哪个键被按下、敲击或释放,getKeycode方法返回一个键码值。

也可以用Keyevent类的publicchargetKeychar()判断哪个键被按下、敲击或释放,getKeychar方法返回键上的字符。

  键盘事件Keyevent对象调用getmodifiers()方法,可以返回整数值ALT_mAsK、cTRL_mAsK、shIFT_mAsK,它们分别是Inputevent类的类常量。

  程序可以通过getmodifiers()方法返回的值处理组合键事件。

例如,对于Keyevent对象e,当按下cTRL+x组合键时,下面的逻辑表达式为true:

  e.getmodifiers()==Inputevent.cTRL_mAsK

  将某个对象作为自己的监视器。

  创建监视器对象的类必须声明实现相应的事件接口:

  classAimplementsxxxListener

  当事件源发生事件时,监视器将调用接口中相应的方法做出处理。

Java使用了接口回调技术设计了它的处理事件模式,注意到

  addxxxListener(xxxListenerlistener)

  方法中的参数是一个接口类型,listener可以引用任何实现了xxxListener接口的类所创建的对象,当事件源发生事件时,接口listener立刻回调类实现的接口中的某个方法。

  事件的处理过程如下图所示:

  监视器回调接口方法事件源.addxxxListener(

  图事件处理示意图

  内部类实例做监视器:

  Java支持在一个类中声明另一个类,这样的类成为内部类,而包含内部类的类成为内部类的外嵌类,外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用外嵌类中的方法。

匿名类是内部类的特殊情形,即省略类声明,可以直接用类体创建对象,因此,可以使用匿名内部类的对象做监视器。

例如:

  xxx.addActionListener(newActionListener(){

  @override

  publicvoidactionperformed(Actionevente){

  }

  });

  实验内容

  1.图形用户界面设计程序(ArtFont.java)

  在实验三第1题的基础上,添加事件处理机制,并逐步完善程序功能。

分别用ArtFont类的对象做监视器和匿名内部类的对象做监视器实现。

  要求实现如下功能:

  

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2