《Java语言程序设计》实验指导书Word下载.docx
- 文档编号:17029310
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:12
- 大小:62.07KB
《Java语言程序设计》实验指导书Word下载.docx
《《Java语言程序设计》实验指导书Word下载.docx》由会员分享,可在线阅读,更多相关《《Java语言程序设计》实验指导书Word下载.docx(12页珍藏版)》请在冰豆网上搜索。
(3)编写一个程序,求1-100间的素数。
(4)有一函数:
x(x<
1)
Y=3x-2(1≤x<
10)
4x(x≥10)
写一程序,输入x值,输出y值。
(5)使用for循环语句,编写程序输出以下图案。
☆
☆☆☆
☆☆☆☆☆
☆☆☆☆☆☆☆
(6)编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。
判断年是否为闰年的条件是:
①若年号可以被4整除,而不能被100整除,则是闰年;
②若年号可以被400整除,也是闰年。
3.实验预习
(1)复习本章所学内容。
(2)写出实验内容中第
(2)、(3)题两个程序的源代码,作为预习报告。
4.实验步骤及结果
实验过程中,注意记录以下内容:
(1)实验过程中实验步骤及其结果。
(2)遇到的问题及解决办法。
(3)实验体会。
实验2Java面向对象程序设计
掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。
(1)创建一个复数类complex,以复数进行数学运算、复数具有如下格式:
RealPart+ImaginaryRart*I,其中,I为-1的平方根。
要求如下:
1 利用浮点变量表示此类的私有数据。
提供两个构造方法,一个为有参构造方法,为实例对象提供实部和虚部;
一个为默认的无参构造方法。
2 提供两复数加、减、乘的方法成员。
3 按格式(a,b)打印复数。
其中a为实部,b为虚部。
(2)创建银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。
(3)编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。
(4)编程实现以下简单超市管理,具体要求如下:
1 实现描述超市的类Suppermacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果;
2 定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。
3 main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作
提示:
①超市货架可以使用商品数组,数组大小100表明存放100个商品。
②注意实现商品查询的多态性,要求可以根据商品的名称或产地或价格查询商品的数量。
3.实验预习要求
复习本章所学内容,思考以下问题:
(1)什么是对象?
什么是类?
(2)面向对象编程的特性有哪三个?
它们各自有哪些特性?
(3)Java语言在面向对象编程方面有哪些独特的特点?
(4)抽象类与接口有何异同?
实验3数组和字符串编程
(1)通过实验,掌握Java语言中数组、字符串程序设计的基本方法。
(2)较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。
(1)编写一个程序,在控制台输入10个数,按大小顺序输出。
(2)求一个3*3矩阵对角元素之和。
(3)输入一段字符串,统计其中有多少个单词。
(单词用空格隔开)
(1)将本章所学内容要点进行整理,并认真体会例题中的编程要领。
实验4Java异常处理
掌握异常的概念,以及如何定义、抛出和捕获处理异常。
(1)做实验之前要求思考以下问题,作为预习内容;
1 错误和异常有何区别?
查看Java异常类的关系图。
2 异常是如何抛出、捕获和处理的?
3 Java捕获和处理异常的结构式怎样的?
4 Try语句如何嵌套?
Throw语句有何作用?
Finally程序块有何作用?
(2)运行下面的程序,理解异常的抛出、捕获与处理。
Importjava.io.*;
publicclassvoidmain(Stringargs[]){
publicstaicvoidmain(Stringargs[]){
for(inti=0;
i<
4;
i++){
intk;
try{
switch(i){
case0:
//dividedbyzero
intzero=0;
k=911//zero
break;
case1:
//nullpointer
intb[]=null;
k=b[0];
case2;
//arrayindexoutofbound
intc[]=newint[2];
k=c[9];
case3:
//stringindexoutofbound
charch="
abc"
.charAt(99);
}
}catch(Exceptione){
System.out.println("
\nTestcase#"
+i+"
\n"
);
System.out.println(e);
(3)在实验二中的超市、商品类中创建一个自定义异常类。
编程实现以下简单超市管理,具体要求如下:
1.实现描述超市的类Supermacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果;
2.定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给予提示)、Add(商品上架操作)和ShowMe(显示商品信息)。
3.main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作
要求:
在定义商品类时,若销售商品数量大于余额则作为异常处理(InsufficientFundsException)。
提示:
1 产生异常条件是某类商品销售数量大于库存额,因此是否抛出异常要先判断该条件。
2 确定产生异常的方法,应该在sale方法中产生异常InsufficientFundsException。
3 处理异常安排在调用sale的时候,因此sale方法要声明异常,由上级方法捕获并处理。
4 要定义好自己的异常。
3.实验步骤及结果
在实验过程中记录实验步骤及其结构。
实验5图形用户界面编程
掌握文本组件、按钮和单、复选按钮组件的使用;
掌握列表的使用,鼠标、键盘事件的处理;
掌握布局控制的方法。
(1)编写一个程序响应鼠标事件,当鼠标事件发生时,在状态条显示相应的时间信息。
使用showStatus(字符串)方法。
(2)试设计一窗口,内含一个按钮。
开始运行时,按钮显示“ClickMe”字样,当按钮按下时,按钮显示为“ClickMeAgain”字样,再按一次,则按钮显示“ClickMe”字样,依次循环。
(3)仿照Windows2000/XP系统提供扫雷游戏编写一个类似功能和界面的扫雷程序。
(1)Java语言是跨平台的编程语言,那么图形用户界面如何做到跨平台?
(2)AWT有哪些组件和容器?
它们各自的使用方法是什么?
(3)AWT的事件处理模型是什么?
原理又如何?
(4)什么是Swing?
它和AWT比有什么优点?
使用上有什么区别?
实验6多线程编程
(1)现成的概念、线程的生命周期。
(2)多线程的编程:
扩展Thread类与使用Runnable接口。
(3)使用多线程机制实现动画
(1)运行下面的程序,理解用创建Thread子类的方法实现多线程。
//S06_1_Thread.Java
Importjava.util.*;
classS06_1_ThreadextendsThread{
intpauseTime;
Stringname;
publicS06_1_Thread(intx,Stringn){
pauseTime=x;
name=n;
}
publicvoidrun(){
while(true){
system.out.println(name+"
:
"
+newDate(System.currentTimeMillis()));
Tread.sleep(pauseTime);
}catch(Exceptione){System.out.println(e);
staticpublicvoidmain(Stringsrgs[]){
S06_1_Threadtp1=newS06_1_Thread(1000,"
Fast"
tp1.start();
S06_1_Threadtp2=newS06_1_Thread(3000,"
Slow"
tp2.start();
(2)运行下面的程序,理解用实现Runnable接口的方法实现多线程。
//S06_2_Thread.Java
classS06_2_ThreadimplementsRunnable{
publicS06_2_Thread(intx,Stringn){
Threadt1=newThread(newS06_2_Thread(1000,"
));
t1.start();
Threadt2=newThread(newS06_2_Thread(3000,"
t2.start();
(3)创建简单的程序ThreeThread.java,该程序将创建三个线程,每个线程应当显示它所运行的时间(可以考虑使用Date类或Calendar类)。
(1)将本章所学内容要点进行整理,熟练掌握线程的编程要领。
(2)写出实验内容中第(3)题程序的源代码,作为预习报告。
实验7输入与输出
(1)掌握Java两种基本输入/输出流类的使用。
(2)掌握Java文件类型的使用。
(3)掌握文件的输入、输出方法。
(1)编写程序,实现从键盘输入字符串并在屏幕上输出。
(2)利用Java文件类File的方法,获取磁盘文件的文件名、长度、大小等特性。
(3)编写程序,利用Java字符流文件输入/输出类,实现将源程序复制到另一个文件中。
(4)编写一个程序,比较两个文件的内容是否相同。
(5)编写一个程序,求2~200之间的素数,并将结果保存在文件prime.dat中。
再从该文件中读取内容并在屏幕上显示出来。
(1)将本章所学内容要点进行整理,熟练掌握网络的编程要领。
(2)写出实验内容中的源代码,作预习报告。
(2)遇到的问题及解决方法。
实验8网络编程
(1)掌握TCP编程:
Socket的概念和编程方法。
(2)掌握URL类的使用:
URL的概念和编程。
(1)使用socket编写一个服务器端程序,服务器端程序在端口8888监听,如果它接到客户端发来的"
hello"
请求时会回应一个"
,对客户端的其他请求不响应。
(2)使用Socket编程,客户机发送数据到服务器,服务器将接收到的数据返回给客户机。
(3)设计图形用户界面的客户端程序和服务器端程序,实现客户端读取服务器段内容,要求支持客户端的多线程操作。
(2)写出实验内容中第
(2)、(3)题程序的源代码,作为预习报告。
实验9数据库编程
(1)了解JDBC的概念和工作原理。
(2)掌握使用JDBC实现简单的数据库管理。
(1)建立一个student表的结构,字段包括学号、姓名、性别、年龄、班级等。
(2)配置ODBC数据源,假设在本例中,数据源的名字是“Vtest”。
(3)编写程序,使其可以通过图形界面向“student”表中增加数据记录。
(4)编写程序,在“student”表中分别查询所有记录以及满足条件“年龄>
18”的记录。
(2)写出实验内容中所用程序的源代码,作为预习报告。
本科实验报告
课程名称:
JAVA语言程序设计实验
实验项目:
(名称)
实验地点:
专业班级:
学号:
学生姓名:
指导教师:
2016年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java语言程序设计 Java 语言程序设计 实验 指导书