实验二.docx
- 文档编号:11933379
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:49
- 大小:91.21KB
实验二.docx
《实验二.docx》由会员分享,可在线阅读,更多相关《实验二.docx(49页珍藏版)》请在冰豆网上搜索。
实验二
软件职业技术学院
CCUTSOFT
面向对象程序设计
实验指导书
适用于计算机科学与技术专业(2+3本科学生)
面向对象程序设计课程组编写
2013年9月
前言
一、上机实验目的
上机实验的目的是提高学生的分析问题、解决问题的能力和动手能力,通过实践环节理解Java
语言的基本结构和程序设计方法。
通过亲手编程掌握Java程序设计编程的方法。
二、实验基本内容
为了使学生在上机实验时目标明确,本实验指导书针对课程内容编写了4个实验,学生在实验课时完成指导书中给出的程序任务,理解所学的知识,也可在此基础上再编写其他应用程序。
指导书中的4个实验如下:
1.学生信息管理系统前台页面设计
2.学生信息管理系统后台实现
3.简易记事本
4.倒计时牌的设计
在完成基本实验前,需要进行相关的知识储备,需要提前掌握如下知识:
Java程序运行环境安装与配置;Java基本语法的编程练习;面向对象编程练习;Java包、接口和异常处理的练习。
三、实验任务与时间安排
《面向对象程序设计》上机实验时间为8学时,具体实践课时安排如下:
模块
实验序号
知识点
实践课时
备注
预备知识
Java运行环境的安装、配置与运行;Java基本语法练习;面向对象编程练习;包、接口与异常处理(exception)。
实验内容
1
学生信息管理系统前台页面设计
2
2
学生信息管理系统后台实现
2
3
简易记事本
2
4
倒计时牌的设计
2
目录
前言-1-
一、上机实验目的-1-
二、实验基本内容-1-
三、实验任务与时间安排-1-
目录-1-
第一部分预备知识-1-
一、Java运行环境的安装、配置与运行-1-
二、Java基本语法练习-4-
三、面向对象编程练习-10-
四、包、接口与异常处理(exception)-19-
第二部分面向对象程序设计实验-23-
实验一建立图形用户界面-23-
一、实验目的-23-
二、实验要求-23-
三、实验内容及步骤-23-
四、实验结果-25-
四、实验报告-25-
实验二流与文件-26-
一、实验目的-26-
二、实验要求-26-
三、实验内容及步骤-26-
四、实验报告-28-
实验三线程-29-
一、实验目的-29-
二、实验要求-29-
三、实验内容及步骤-29-
四、实验报告-31-
实验四数据库的连接:
JDBC-32-
一、实验目的-32-
二、实验要求-32-
三、实验内容及步骤-32-
四、实验报告-35-
第一部分预备知识
一、Java运行环境的安装、配置与运行
(一)要求
1.安装并设置JavaSDK软件包。
2.编写一个简单的Java程序,在屏幕上输出”hello,java!
”。
publicclassHello
{
publicstaticvoidmain(Stringargs[]){
System.out.println("hello,java!
");
}
}
3.掌握运行Java程序的步骤。
4.浏览SDK自带的Applet应用小程序。
(二)内容
(1)SDK的下载与安装
1.机器要求
Java对机器运行要求不高。
下面给出的是基于Windows平台的机器要求。
硬件要求:
CPUPII以上,64M内存,1OOM硬盘空间即可。
软件要求:
Windows98/Me/XP/NT/2000,IE5以上。
2.下载SDK
为了建立基于SDK的Java运行环境,需要先下载Sun的免费SDK软件包。
SDK包含了一整套开发工具,其中包含对编程最有用的是Java编译器、Applet查看器和Java解释器。
在浏览器中输入J2SE最新版本的SDK软件包。
有两种选择:
一种是在线安装“WindowsInstallation”;一种是离线安装“WindowsOfflineInstallation”。
3.安装SDK
运行下载的JDK软件包,在安装过程中可以设置安装路径及选择组件。
4.SDK中的主要文件夹和文件
安装成功后,安装目录中的文件和子目录中,bin文件夹中包含编译器(javac.exe)、解释器(javac.exe)、Applet查看器(appletviewer.exe)等可执行文件。
(2)设置环境变量
SDK中的工具都是命令行工具,需要从命令行即MS-DOS提示符下运行它们。
很多人可能会不
习惯,但这是Sun特意采取的策略,为的是把精力更多地投入到Java程序设计本身而不是花在开发工具上。
为了能正确方便的使用SDK,可手工配置一些Windows的环境变量,Windows98与Windows/xp/NT/2000的配置略有不同。
下面以Windows/xp/NT/2000为例说明相关配置。
1.设置WindowsXP/NT/2000
♦在桌面“我的电脑”图标上单击右键,选择“属性”菜单,将出现系统特性设置界面
♦在“高级”选项卡中单击“环境变量”按钮。
将出现“环境变量”设置界面
♦在“系统变量”框中选择“Path”,然后单击“编辑”按钮,在出现的“编辑系统变量”对话框中,
♦在“变量值”栏的命令前添加“E:
\j2sdk1.4.2_01\bin;”命令(按实际安装的版本)。
♦用同样方法设置环境变量“classpath”,其值为“E:
\j2sdk1.4.2_01\lib;”命令。
♦设置完成后,单击“开始”→“所有程序”→“附件”→“命令提示符”打开DOS窗口,在命令提示符下输入“java”或“javac”,回车后,如果出现其用法参数提示信息,则安装正确
2.设置DOS起始位置(此步骤选做)
为了在打开DOS窗口时可以直接进入包含你开发的java程序的路径下,下面以WindowsXP/2000为例说明设置过程。
♦首先建立一个存放java源程序的路径和文件夹,如将实验中建立的java源程序都存放在为“e:
\java\程序”文件夹中。
♦单击“开始”→“所有程序”→“附件”→“命令提示符”,选择“命令提示符”选项右击,
♦在出现的下拉菜单中选择“属性”菜单,将打开“命令提示符属性”对话框,如图1.11所示。
♦在“命令提示符属性”对话框中选择“快捷方式”选项,在“起始位置”栏输入“e:
\java\程序”,单击“确定”按钮。
进行了上面的设置后,打开DOS窗口时将直接进入“e:
\java\程序>”路径下。
如果没有进行上述设置,可使用DOS命令,直接输入“e:
”按回车进入到e盘,再输入“cdjava”到e盘的java子目录下,再输入“cd程序”即可到“e:
\java\程序>”路径下。
(3)编写、编译Java源程序
1.打开一个纯文本编辑器,键入如下程序:
publicclassHello{
publicstaticvoidmain(Stringargs[]){
System.out.println("Hello,welcome!
");
}
}
2.将文件命名为Hello.java,保存为文本文件格式文件,注意保存文件的路径。
根据前面环境变量的设置,Hello.java应该保存在“e:
\java\程序>”的路径下。
(4)编译Java源程序
Java源程序编写后,要使用Java编译器(javac.exe)进行编译,将Java源程序编译成可执行
的程序代码。
Java源程序都是扩展名为.java的文本文件。
编译时首先读入Java源程序,然后进行语法检查,如果出现问题就终止编译。
语法检查通过后,生成可执行程序代码即字节码,字节码文件名和源文件名相同,扩展名为.class。
1.打开命令提示符窗口(MS-DOS窗口)进入Java源程序所在路径。
2.键入编译器文件名和要谝译的源程序文件名。
javacHello.java
3.按回车键开始编译(注意:
文件名H要大写,否则运行会出问题)。
如果源程序没有错误,则屏幕上没有输出,键入“dir”按回车键后可在目录中看到生成了一个同名字的.class文件“Hello.class”。
否则,将显示出错信息。
(5)运行Java程序
使用Java解释器(java.exe)可将编译后的字节码文件Hello.class解释为本地计算机代码。
在命令提示符窗口或MS-DOS窗口键入解释器文件名和要解释的字节码文件名javaHello,按回
车键即开始解释并可看到运行结果,如果看到如图1.19所示结果,表明程序运行成功了
(6)安装、使用JCreator软件
在JCreator环境下编辑、编写、运行Java程序
(7)浏览SDK自带的Applet应用小程序。
在\j2sdk1.4.2_01\demo\applets\Clock文件夹中用浏览器打开网页文件example1.html,
就可以看到一个嵌入到Web页面的Applet开始运行,一个模拟时钟出现在网页上
(8)浏览SDK自带的所有程序。
在\j2sdk1.4.2_01\demo文件夹下,都可以浏览。
二、Java基本语法练习
(一)要求
1.编写一个声明Java不同数据类型变量的程序。
2.编写一个使用运算符、表达式、变量的程序。
3.编写一个使用Java数组的的程序。
4.编写表达式语句、复合语句的程序。
5.编写使用不同选择结构的程序。
6.编写使用不同循环结构结构的程序。
(二)内容
(1)声明不同数据类型的变量
1.编写声明不同数据类型变量的程序文件KY2_1.java,源代码如下。
publicclassKY2_1{
publicstaticvoidmain(Stringargs[]){
byteb=0x55;
shorts=0x55ff;
inti=1000000;
longl=0xffffL;
charc='a';
floatf=0.23F;
doubled=0.7E-3;
booleanB=true;
StringS="这是字符串类数据类型";
System.out.println("字节型变量b="+b);
System.out.println("短整型变量s="+s);
System.out.println("整型变量i="+i);
System.out.println("长整型变量l="+l);
System.out.println("字符型变量c="+c);
System.out.println("浮点型变量f="+f);
System.out.println("双精度变量d="+d);
System.out.println("布尔型变量B="+B);
System.out.println("字符串类对象S="+S);
}
}
2.编译并运行该程序
(2)了解变量的使用范围
1.建立KY2_2.java文件,通过本程序了解变量的使用范围,源代码如下。
publicclassKY2_2{
staticinti=10;
publicstaticvoidmain(Stringargs[]){
{
intk=10;
System.out.println("i="+i);
System.out.println("k="+k);
}
System.out.println("i="+i);
System.out.println("k="+k);
//编译时将出错,已出k的使用范围
}
}
2.编译KY2_2.java
此时会出现错误提示。
因为变量k在方法块中声明,在方法块之外它是不存在的,所以编译时会出错。
3.修改上面的程序。
4.成功运行该程序。
思考:
KY2_2.java程序说明了什么问题?
(3)使用关系运算符和逻辑运算符
1.建立使用关系运算符和逻辑运算符的程序文件,源代码如下。
classKY2_3{
publicstaticvoidmain(Stringargs[]){
inta=25,b=20,e=3,f=0;
booleand=a
System.out.println("a=25,b=20,e=3,f=0");
System.out.println("因为关系表达式a
"+d);
if(e!
=0&&a/e>5)
System.out.println("因为e非0且a/e为8大于5,所以输出a/e="+a/e);
if(f!
=0&&a/f>5)
System.out.println("a/f="+a/f);
else
System.out.println("因为f值为0,所以输出f="+f);
}
}
2.编译并运行该程序,结果如图2.3所示。
(4)使用表达式语句与复合语句
1.建立包含表达式语句程序,源代码如下。
classKY2_4{
publicstaticvoidmain(String[]args){
intk,i=3,j=4;
k=20*8/4+i+j*i;
System.out.println("表达式(20*8/4+i+j*i)="+k);
}
}
2.建立包含复合语句程序,源代码如下。
classKY2_5{
publicstaticvoidmain(Stringargs[]){
intk,i=3,j=4;
k=i+j;
System.out.println("在复合块外的输出k="+k);
{
floatf;
f=j+4.5F;
i++;
System.out.println("在复合块内的输出f="+f);
System.out.println("在复合块内的输出k="+k);
}
System.out.println("在复合块外的输出i="+i);
}
}
3.编译并运行上述两个源程序
4.将变量i在块内定义会怎样?
改变其他变量的位置看看会发生什么变化。
思考:
指出程序的复合结构以及变量的使用范围。
(5)使用选择语句
1.使用if...else语句
♦程序功能:
使用if...else语句构造多分支,判断某一年是否为闰年。
闰年的条件是符合下面二者之一:
能被4整除,但不能被100整除;能被4整除,又能被100整除。
♦编写源程序文件,代码如下。
publicclassKY2_6{
publicstaticvoidmain(Stringargs[]){
booleanleap;
intyear=2005;
if((year%4==0&&year%100!
=0)||(year%400==0))//方法1
System.out.println(year+"年是闰年");
else
System.out.println(year+"年不是闰年");
year=2008;//方法2
if(year%4!
=0)
leap=false;
elseif(year%100!
=0)
leap=true;
elseif(year%400!
=0)
leap=false;
else
leap=true;
if(leap==true)
System.out.println(year+"年是闰年");
else
System.out.println(year+"年不是闰年");
year=2050;//方法3
if(year%4==0){
if(year%100==0){
if(year%400==0)
leap=true;
else
leap=false;
}
else
leap=false;
}
else
leap=false;
if(leap==true)
System.out.println(year+"年是闰年");
else
System.out.println(year+"年不是闰年");
}
}
♦编译运行程序
思考:
本程序中有几个选择语句,哪些具有嵌套关系?
2.使用switch语句
♦程序功能:
在不同温度时显示不同的解释说明。
♦程序源代码如下。
classKY2_7{
publicstaticvoidmain(Stringargs[]){
intc=38;
switch(c<10?
1:
c<25?
2:
c<35?
3:
4){
case1:
System.out.println(""+c+"℃有点冷。
要多穿衣服。
");
case2:
System.out.println(""+c+"℃正合适。
出去玩吧。
");
case3:
System.out.println(""+c+"℃有点热。
");
default:
System.out.println(""+c+"℃太热了!
开空调。
");
}
}
}
♦编译运行程序
(6)使用循环语句
1.for循环语句练习
♦程序功能:
按5度的增量打印出一个从摄氏温度到华氏温度的转换表。
♦程序源代码如下。
classKY2_8{
publicstaticvoidmain(Stringargs[]){
inth,c;
System.out.println("摄氏温度华氏温度");
for(c=0;c<=40;c+=5){
h=c*9/5+32;
System.out.println(""+c+""+h);
}
}
}
♦编译并运行程序,其结果如图2.9所示。
2.while循环语句练习
♦程序功能:
运行程序后从键盘输入数字1/2/3后,可显示抽奖得到的奖品;如果输入其它数
♦字或字符显示“没有奖品给你!
”。
♦程序源代码如下。
importjava.io.*;
classKY2_9{
publicstaticvoidmain(Stringargs[])throwsIOException{
charch;
System.out.println("按1/2/3数字键可得大奖!
");
System.out.println("按空格键后回车可退出循环操作.");
while((ch=(char)System.in.read())!
='')
{
System.in.skip
(2);//跳过回车键
switch(ch){
case'1':
System.out.println("恭喜你得大奖,一辆汽车!
");
break;
case'2':
System.out.println("不错呀,你得到一台笔记本电脑!
");
break;
case'3':
System.out.println("没有白来,你得到一台冰箱!
");
break;
default:
System.out.println("真不幸,你没有奖品!
下次再来吧。
");
}
}
}
}
♦编译源程序。
♦在命令提示符窗口运行程序,然后分别按1、2、3、r,记录结果。
3.do…while循环语句练习
♦程序功能:
求1+2+…+100之和,并将求和表达式与所求的和显示出来。
♦程序源代码如下。
classKY2_10{
publicstaticvoidmain(Stringargs[]){
intn=1,sum=0;
do{
sum+=n++;
}
while(n<=100);
System.out.println("1+2+...+100="+sum);
}
}
♦编译并运行程序
4.多重循环练习
♦输出九九乘法表的程序,源代码如下。
publicclassKY2_11
{
publicstaticvoidmain(Stringargs[])
{
inti,j,n=9;
System.out.print("*|");
for(i=1;i<=n;i++)
System.out.print(""+i);
System.out.print("\n-------|");
for(i=1;i<=n;i++)
System.out.print("----");
System.out.println();
for(i=1;i<=n;i++)
{
System.out.print(""+i+"|");
for(j=1;j<=i;j++)
System.out.print(""+i*j);
System.out.println();
}
}
}
♦编译并运行程序
三、面向对象编程练习
(一)要求
1.编写一个体现面向对象思想的程序。
2.编写一个创建对象和使用对象的方法的程序。
3.编写一个显示当前日期和时间的程序。
4.编写不同成员变量修饰方法的程序。
5.编写不同成员方法修饰方法的程序。
6.编写体现类的继承性(成员变量、成员方法、成员变量隐藏)的程序。
7.编写体现类的多态性(成员方法重载、构造方法重载)的程序。
(二)内容
(1)创建Applet应用小程序
1.创建一个Applet应用程序KY3_1.java文件。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验