《Java语言程序设计》——软件实验指导书_第1页
《Java语言程序设计》——软件实验指导书_第2页
《Java语言程序设计》——软件实验指导书_第3页
《Java语言程序设计》——软件实验指导书_第4页
《Java语言程序设计》——软件实验指导书_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java程序设计实验指导书太原理工大学计算机科学与技术学院(软件学院) 目 录实验1 Java语言基础3实验2 数组和字符串编程4实验3 Java面向对象程序设计5实验4 Java异常处理7实验5 多线程编程9实验6 图形用户界面编程11实验7 输入与输出14实验8 网络编程15实验9 数据库编程16实验1 Java语言基础1.实验目的(1) 通过实验,掌握Java语言程序设计的基本方法。(2) 学会Java语言中标示符的命名、运算符和表达式的应用。(3) 熟练地掌握Java程序流程控制语句的应用。2.实验内容(1) 编写应用程序,计算100(含100)以内所有偶数的和。(2) “水仙花数”是

2、指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。(3) 编写一个程序,求1-100间的素数。(4) 有一函数: x (x<1)Y= 3x-2 (1x<10) 4x (x10) 写一程序,给定x值,输出y值。(5) 使用for循环语句,编写程序输出以下图案。(6) 编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是: 若年号可以被4整除,而不能被100整除,则是闰年; 若年号可以被400整除,也是闰年。3.实验预习(1) 复习本章所学

3、内容。(2) 写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决办法。(3) 实验体会。实验2 数组和字符串编程1.实验目的(1) 通过实验,掌握Java语言中数组、字符串程序设计的基本方法。(2) 较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。2.实验内容(1) 编写一个程序,在控制台输入10个数,按大小顺序输出。(2) 求一个3*3矩阵对角线元素之和。(3) 输入一段字符串,统计其中有多少个单词。(单词用空格隔开)3.实验预习(1) 将本章所学内容要点进

4、行整理,并认真体会例题中的编程要领。(2) 写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决办法。(3) 实验体会。实验3 Java面向对象程序设计1.实验目的掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。2.实验内容(1) 创建一个复数类complex,以附属进行数学运算、复数具有如下格式:RealPart+ImaginaryRart*I ,其中,I为-1的平方根。 要求如下:1 利用浮点变量表示此类的私有数据。提供两

5、个构造方法,一个用于此类声明的对象的初始化;一个为默认的无参构造方法。2 提供两复数加、减、乘的运算方法。3 按格式(a,b)打印复数。其中a为实部,b为虚部。(2) 创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。(3) 编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。(4) 编程实现以下简单超市管理,具体要求如下:1 实现描述超市的类Suppermacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果)

6、,查询商品的函数query,并显示查询结果;2 定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。3 main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作提示: 超市货架可以使用商品数组,数组大小100表明存放100个商品。 注意实现商品查询的多态性,要求可以根据商品的名称或产地或价格查询商品的数量。3.实验预习要求复习本章所学内容,思考以下问题:(1) 什么是对象?什么是类?(2)

7、面向对象编程的特性有哪三个?它们各自有哪些特性?(3) Java语言在面向对象编程方面有哪些独特的特点?(4) 抽象类与接口有何异同?4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决办法。(3) 实验体会。实验4 Java异常处理1.实验目的掌握异常的概念,以及如何定义、抛出和捕获处理异常。2.实验内容(1) 做实验之前要求思考以下问题,作为预习内容;1 错误和异常有何区别?查看Java异常类的关系图。2 异常是如何抛出、捕获和处理的?3 Java捕获和处理异常的结构式怎样的?4 Try语句如何嵌套?Trow语句有何作用?Finall

8、y程序快的作用是什么?(2) 运行下面的程序,理解异常的抛出、捕获与处理。Import java.io.*;public class void main(String args) public staic void main(String args) for(int i=0;i<4;i+) int k; try switch(i) case 0: /divided by zero int zero=0; k=911 /zero break; case 1:/null pointer int b=null; k=b0; break; case 2; /array index out of

9、bound int c=new int2; k=c9; break; case 3: /string index out of bound char ch="abc".charAt(99); break; catch(Exception e) System.out.println("nTestcase#"+i+"n"); System.out.println(e); (3)在实验三中的超市、商品类中创建一个自定义异常类。 要求:在定义商品类时,若销售商品数量大于余额则作为异常处理(InsufficientFundsException)

10、。提示:1 产生异常条件是某类商品销售数量大于库存额,因此是否抛出异常要先判断该条件。2 确定产生异常的方法,应该在sale方法中产生异常Insufficient Funds Exception。3 处理异常安排在调用sale的时候,因此sale方法要声明异常,由上级方法捕获并处理。4 要定义好自己的异常。3.实验步骤及结果在实验过程中记录实验步骤及其结构。4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决办法。(3) 实验体会。实验5 多线程编程1.实验目的(1) 现成的概念、线程的生命周期。(2) 多线程的编程:扩展Thread类与

11、使用Runnable接口。(3) 使用多线程机制实现动画2.实验内容(1) 运行下面的程序,理解用创建Thread子类的方法实现多线程。/S09_01_Thread.JavaImport java.util.*;class S09_01_Thread extends Thread int pauseTime; String name; public S09_01_Thread(int x,String n) pauseTime=x; name=n;public void run() while(true) try system.out.println(name+":"+ne

12、w Date(System.currentTimeMillis(); Tread.sleep(pauseTime); catch(Exception e)System.out.println(e); static public void main(String srgs) S09_01_Thread tp1=new S09_01_Thread(1000,"Fast"); tp1.start(); S09_01_Thread tp2=new S09_01_Thread(3000,"Slow"); tp2.start(); (2) 运行下面的程序,理解用实现

13、Runnable接口的方法实现多线程。/S09_02_Thread.JavaImport java.util.*;class S09_02_Thread implements Runnable int pauseTime; String name; public S09_02_Thread(int x,String n) pauseTime=x; name=n;public void run() while(true) try system.out.println(name+":"+new Date(System.currentTimeMillis(); Tread.sle

14、ep(pauseTime); catch(Exception e)System.out.println(e); static public void main(String srgs) Thread t1=new Thread(new S09_02_Thread(1000,"Fast"); t1.start(); Thread t2=new Thread(new S09_02_Thread(3000,"Slow"); t2.start(); (3) 创建简单的程序ThreeThread.java,该程序将创建三个线程,每个线程应当显示它所运行的时间(可以

15、考虑使用Date类或Calendar类)。3.实验预习(1) 将本章所学内容要点进行整理,熟练掌握线程的编程要领。(2) 写出实验内容中第(3)题程序的源代码,作为预习报告。4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决办法。(3) 实验体会。实验6 图形用户界面编程1.实验目的 掌握文本组件、按钮和单、复选按钮组件的使用;掌握列表的使用,鼠标、键盘事件的处理;掌握布局控制的方法。2.实验内容(1) 编写一个Applet程序响应鼠标事件,当鼠标事件发生时,在状态条显示相应的时间信息。提示:使用showStatus(字符串)方法。(2

16、) 完成图6-1所示的GUI布局管理,不需要实现功能。图6-1 要实现的GUI布局管理(3) 试设计一窗口,内含一个按钮。开始运行时,按钮显示“Click Me”字样,当按钮按下时,按钮显示为“Click Me Again”字样,再按一次,则按钮显示“Click Me”字样,依次循环。(4) 仿照Windows 2000/XP系统提供扫雷游戏编写一个类似功能和界面的扫雷程序。(5) 编写一个简易文本编辑器,参考界面如图6-2所示。图6-2 简易文本编辑器运行效果图要求:包含基本的打开、保存、新建等功能。包含菜单,能够对文本的字体类型和颜色进行设置,力求界面美观。3.实验预习复习本章所学内容,思

17、考以下问题:(1) Java语言是跨平台的编程语言,那么图形用户界面如何做到跨平台?(2) AWT有哪些组件和容器?它们各自的使用方法是什么?(3) AWT的事件处理模型是什么?原理又如何?(4) 什么是Swing?它和AWT比有什么优点?使用上有什么区别?4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决办法。(3) 实验体会。实验7 输入与输出1.实验目的(1) 掌握Java两种基本输入/输出流类的使用。(2) 掌握Java文件类型的使用。(3) 掌握文件的输入、输出方法。2.实验内容(1) 编写程序,实现从键盘输入字符串并在屏幕上

18、输出。(2) 利用Java文件类File的方法,获取磁盘文件的文件名、长度、大小等特性。(3) 编写程序,利用Java字符流文件输入/输出类,实现将源程序复制到另一个文件中。(4)编写一个程序,比较两个文件的内容是否相同。(5)编写一个程序,求2200之间的素数,并将结果保存在文件prime.dat中。再从该文件中读取内容并在屏幕上显示出来。3.实验预习(1) 将本章所学内容要点进行整理,熟练掌握网络的编程要领。 (2) 写出实验内容中的源代码,作预习报告。 4.实验步骤及结果实验过程中,注意记录以下内容:(1) 实验过程中实验步骤及其结果。(2) 遇到的问题及解决方法。(3) 实验体会。实验8 网络编程1.实验目的(1) 掌握TCP编程:Sodket的概念和编程方法。(2) 掌握URL类的使用:URL的概念和编程。2.实验内容(1)使用socket编写一个服务器端程序,服务器端程序在端口8888监听,如果它接到客户端发来的"hello"请求时会回应一个&qu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论