资源描述
《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) “水仙花数”是指一个3位数,其个位、十位、百位上数字立方和等于该数本身,比如371=33+73+13,所以371是一个水仙花数。编写程序,求全部水仙花数。
(3) 编写一个程序,求1-100间素数。
(4) 有一函数:
x (x<1)
Y= 3x-2 (1≤x<10)
4x (x≥10)
写一程序,给定x值,输出y值。
(5) 使用for循环语句,编写程序输出以下图案。
☆
☆☆☆
☆☆☆☆☆
☆☆☆☆☆☆☆
☆☆☆☆☆
☆☆☆
☆
(6) 编写程序,输出从公元19到21全部闰年年号,每输出5个年号换一行。判定年是否为闰年条件是:① 若年号能够被4整除,而不能被100整除,则是闰年;② 若年号能够被400整除,也是闰年。
3.试验预习
(1) 复习本章所学内容。
(2) 写出试验内容中第(2)、(3)题两个程序源代码,作为预习汇报。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验2 数组和字符串编程
1.试验目标
(1) 经过试验,掌握Java语言中数组、字符串程序设计基础方法。
(2) 较熟练地掌握Java程序数组应用、字符串处理操作方法应用。
2.试验内容
(1) 编写一个程序,在控制台输入10个数,按大小次序输出。
(2) 求一个3*3矩阵对角线元素之和。
(3) 输入一段字符串,统计其中有多少个单词。(单词用空格隔开)
3.试验预习
(1) 将本章所学内容关键点进行整理,并认真体会例题中编程要领。
(2) 写出试验内容中第(2)、(3)题两个程序源代码,作为预习汇报。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验3 Java面向对象程序设计
1.试验目标
掌握Java面向对象程序设计中类、继承、包和接口概念和应用,能熟练应用方法、类、组员变量等元素。
2.试验内容
(1) 创建一个复数类complex,以隶属进行数学运算、复数含有以下格式:RealPart+ImaginaryRart*I ,其中,I为-1平方根。
要求以下:
① 利用浮点变量表示这类私有数据。提供两个结构方法,一个用于这类申明对象初始化;一个为默认无参结构方法。
② 提供两复数加、减、乘运算方法。
③ 按格式(a,b)打印复数。其中a为实部,b为虚部。
(2) 创建银行账号Account类,实现存款(balance)存(deposit)、取(withdraw)和查询(getbalance)等功效。
(3) 编程定义一个接口,实现三个数中求最小值和最大值方法,并将程序存放在mymaths包中。
(4) 编程实现以下简单超市管理,具体要求以下:
① 实现描述超市类Suppermacket类,含有货架属性,统计系统中现有商品,定义盘点商品函数check(盘点各类商品数量,并输出盘点结果),查询商品函数query,并显示查询结果;
② 定义商品类Goods,含有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale(销售商品,余额不足时给提醒)、Add(商品上架操作)和ShowMe(显示商品信息)。
③ main函数,测试以上所要求多种功效,即能够依据菜单命令增加、删除、查询商品、盘点商品,和商品销售和商品上架操作
提醒:① 超市货架能够使用商品数组,数组大小100表明存放100个商品。
② 注意实现商品查询多态性,要求能够依据商品名称或产地或价格查询商品数量。
3.试验预习要求
复习本章所学内容,思索以下问题:
(1) 什么是对象?什么是类?
(2) 面向对象编程特征有哪三个?它们各自有哪些特征?
(3) Java语言在面向对象编程方面有哪些独特特点?
(4) 抽象类和接口有何异同?
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验4 Java异常处理
1.试验目标
掌握异常概念,和怎样定义、抛出和捕捉处理异常。
2.试验内容
(1) 做试验之前要求思索以下问题,作为预习内容;
① 错误和异常有何区分?查看Java异常类关系图。
② 异常是怎样抛出、捕捉和处理?
③ Java捕捉和处理异常结构式怎样?
④ Try语句怎样嵌套?Trow语句有何作用?Finally程序快作用是什么?
(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=b[0];
break;
case 2; //array index out of bound
int c[]=new int[2];
k=c[9];
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)。
提醒:
① 产生异常条件是某类商品销售数量大于库存额,所以是否抛出异常要先判定该条件。
② 确定产生异常方法,应该在sale方法中产生异常Insufficient Funds Exception。
③ 处理异常安排在调用sale时候,所以sale方法要申明异常,由上级方法捕捉并处理。
④ 要定义好自己异常。
3.试验步骤及结果
在试验过程中统计试验步骤及其结构。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验5 多线程编程
1.试验目标
(1) 现成概念、线程生命周期。
(2) 多线程编程:扩展Thread类和使用Runnable接口。
(3) 使用多线程机制实现动画
2.试验内容
(1) 运行下面程序,了解用创建Thread子类方法实现多线程。
//S09_01_Thread.Java
Import 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+":"+new 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) 运行下面程序,了解用实现Runnable接口方法实现多线程。
//S09_02_Thread.Java
Import 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.sleep(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,该程序将创建三个线程,每个线程应该显示它所运行时间(能够考虑使用Date类或Calendar类)。
3.试验预习
(1) 将本章所学内容关键点进行整理,熟练掌握线程编程要领。
(2) 写出试验内容中第(3)题程序源代码,作为预习汇报。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验6 图形用户界面编程
1.试验目标
掌握文本组件、按钮和单、复选按钮组件使用;掌握列表使用,鼠标、键盘事件处理;掌握布局控制方法。
2.试验内容
(1) 编写一个Applet程序响应鼠标事件,当鼠标事件发生时,在状态条显示对应时间信息。提醒:使用showStatus(字符串)方法。
(2) 完成图6-1所表示GUI布局管理,不需要实现功效。
图6-1 要实现GUI布局管理
(3) 试设计一窗口,内含一个按钮。开始运行时,按钮显示“Click Me”字样,当按钮按下时,按钮显示为“Click Me Again”字样,再按一次,则按钮显示“Click Me”字样,依次循环。
(4) 仿照Windows /XP系统提供扫雷游戏编写一个类似功效和界面扫雷程序。
(5) 编写一个简易文本编辑器,参考界面图6-2所表示。
图6-2 简易文本编辑器运行效果图
要求:包含基础打开、保留、新建等功效。包含菜单,能够对文本字体类型和颜色进行设置,努力争取界面美观。
3.试验预习
复习本章所学内容,思索以下问题:
(1) Java语言是跨平台编程语言,那么图形用户界面怎样做到跨平台?
(2) AWT有哪些组件和容器?它们各自使用方法是什么?
(3) AWT事件处理模型是什么?原理又怎样?
(4) 什么是Swing?它和AWT比有什么优点?使用上有什么区分?
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验7 输入和输出
1.试验目标
(1) 掌握Java两种基础输入/输出流类使用。
(2) 掌握Java文件类型使用。
(3) 掌握文件输入、输出方法。
2.试验内容
(1) 编写程序,实现从键盘输入字符串并在屏幕上输出。
(2) 利用Java文件类File方法,获取磁盘文件文件名、长度、大小等特征。
(3) 编写程序,利用Java字符流文件输入/输出类,实现将源程序复制到另一个文件中。
(4)编写一个程序,比较两个文件内容是否相同。
(5)编写一个程序,求2~200之间素数,并将结果保留在文件prime.dat中。再从该文件中读取内容并在屏幕上显示出来。
3.试验预习
(1) 将本章所学内容关键点进行整理,熟练掌握网络编程要领。
(2) 写出试验内容中源代码,作预习汇报。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理方法。
(3) 试验体会。
试验8 网络编程
1.试验目标
(1) 掌握TCP编程:Sodket概念和编程方法。
(2) 掌握URL类使用:URL概念和编程。
2.试验内容
(1)使用socket编写一个服务器端程序,服务器端程序在端口8888监听,假如它接到用户端发来"hello"请求时会回应一个"hello",对用户端其它请求不响应。
(2) 使用Socket编程,用户机发送数据到服务器,服务器将接收到数据返回给用户机。
(3)设计图形用户界面用户端程序和服务器端程序,实现用户端读取服务器段内容,要求支持用户端多线程操作。
3.试验预习
(1) 将本章所学内容关键点进行整理,熟练掌握网络编程要领。
(2) 写出试验内容中第(2)、(3)题程序源代码,作为预习汇报。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
试验9 数据库编程
1.试验目标
(1) 了解JDBC概念和工作原理。
(2) 掌握使用JDBC实现简单数据库管理。
2.试验内容
(1) 建立一个student表结构,字段包含学号、姓名、性别、年纪、班级等。
(2) 配置ODBC数据源,假设在本例中,数据源名字是“Vtest”。
(3) 编写程序,使其能够经过图形界面向“student”表中增加数据统计。
(4) 编写程序,在“student”表中分别查询全部统计和满足条件“年纪>18”统计。
3.试验预习
(1) 将本章所学内容关键点进行整理,熟练掌握网络编程要领。
(2) 写出试验内容中所用程序源代码,作为预习汇报。
4.试验步骤及结果
试验过程中,注意统计以下内容:
(1) 试验过程中试验步骤及其结果。
(2) 碰到问题及处理措施。
(3) 试验体会。
展开阅读全文