资料课件新Java实验指导书.docx
- 文档编号:5480552
- 上传时间:2022-12-16
- 格式:DOCX
- 页数:22
- 大小:27.17KB
资料课件新Java实验指导书.docx
《资料课件新Java实验指导书.docx》由会员分享,可在线阅读,更多相关《资料课件新Java实验指导书.docx(22页珍藏版)》请在冰豆网上搜索。
资料课件新Java实验指导书
电子系资料
Java语言程序设计
实验指导
目录
实验1Java开发环境的熟悉2
实验2Java程序设计语言基础5
实验3字符串(String类)的使用7
实验4类与对象10
实验5继承与多态12
实验6常用工具类14
实验7GUI编程及事件处理17
实验8Java中的多线程18
实验9输入输出流22
实验1Java开发环境的熟悉
一、实验目的
1、掌握下载JDK软件包、Eclipse软件的方法;
2、掌握设置Java程序运行环境的方法;
3、掌握编写与运行Java程序的方法;
4、了解Java语言的概貌;
5、为学习Java语言和进行Java程序的实验做好准备工作。
二、实验内容
1、JDK的下载与安装
下载能安装在相应的操作系统类型中的J2SE系统安装程序。
为了建立基于SDK的Java运行环境,需要先下载Sun的免费SDK软件包。
SDK包含了一整套开发工具,其中包含对编程最有用的是Java编译器、Applet查看器和Java解释器。
在浏览器中输入公司网站页面,然后在里面找到下载的链接进行下载就行。
目前的版本最高是Jdk1.7,但是在使用上更多的还是使用Jdk1.7版本。
下载完后进行安装,和一般的软件安装过程差不多,自己选择目录进行jdk的安装。
在本实验中假设jdk的安装路径是“C:
\jdk1.7.0_05“。
2、Java运行环境配置
jdk中的工具都是命令行工具,需要从命令行即MS-DOS提示符下运行它们。
很多人可能会不习惯,但这是Sun特意采取的策略,为的是把精力更多地投入到Java语言本身而不是花在开发工具上。
为了能正确方便的使用JDK,可手工配置一些Windows的环境变量.
(1)设置Windows98
在C:
\autoexec.bat文件中,添加以下内容:
setpath=%path%;C:
\jdk1.7.0_05\bin
setclasspath=.;C:
\jdk1.7.0_05\lib\;%classpath%
C:
\jdk1.7.0_05\bin为程序安装路径,如果安装时做了修改,这里必须做出相应的修改。
“setpath”语句设置Java编译运行程序的路径,“setclasspath”语句设置Java包的路径,其中的“.”表示在当前目录下均可执行Java程序。
autoexec.bat文件修改后存盘,然后重新启动计算机,即完成了设置。
(2)设置WindowsXP/NT/2000
以WindowsXP为例说明设置过程。
在桌面“我的电脑”图标上单击右键,选择“属性”菜单,单击高级选项卡。
在“高级”选项卡中单击“环境变量”按钮。
将出现“环境变量”设置界面,在“系统变量”框中选择“Path”,然后单击“编辑”按钮,在出现的“编辑系统变量”对话框中,在“变量值”栏的命令前添加“C:
\jdk1.7.0_05\bin;”,用同样方法设置环境变量“classpath”,其值为“C:
\jdk1.7.0_05\lib;”。
设置完成后,单击“开始”→“所有程序”→“附件”→“命令提示符”打开DOS窗口,在命令提示符下输入“java”或“javac”,回车后,如果出现其用法参数提示信息,则安装正确。
三、实验要求
1、了解java集成开发环境jdk的结构;
2、掌握jdk的环境变量的配置,理解一个java程序的运行过程;
3、能基本上清楚java程序的组成,简单的查找一些程序错误;
4、能分辨出应用程序何小应用程序的不同,及他们在运行上的差别;
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、jdk程序集成环境Eclipse
五、实验步骤
1、先安装好jdk;
2、配置环境变量;
3、书写java程序;
4、运行程序,查看结果。
六、源代码及测试数据
自己输入一个程序作为测试的数据。
七、实验报告要求(学生完成)
实验报告应包括以下几个部分:
1、jdk的简单介绍;
2、环境变量的设置;
3、应用程序和小应用程序的运行过程;
4、程序的测试结果和问题;
5、实验总结。
八、思考题(学生完成)
1、如何将应用程序和小应用程序放到一个java程序中去,及该java程序即可以作为应用程序运行,也可以作为小应用程序运行?
2、熟悉一个用于java程序开发的工具,建议大家使用Eclipse。
如何使用Eclipse来执行java程序?
3、JDK和JRE的区别?
实验2Java程序设计语言基础
一、实验目的
1、了解Java的数据类型;
2、掌握各种变量的声明方式;
3、理解运算符的优先级;
4、掌握Java基本数据类型、运算符与表达式、数组的使用方法;
5、理解Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法;
6、通过以上内容,掌握Java语言的编程规则。
二、实验内容
读入一个浮点数值,将其转换为中文金额的大写方式,如123.45,转换为:
壹佰贰拾叁元肆角伍分。
要求:
(1)当金额为整数时,只表示整数部分,省略小数部分,并添加“整”字。
例如,123表示为:
壹佰贰拾叁元整;
(2)当金额中含有连续的0时,只需写一个“零”即可,例如,10005表示为:
壹万零伍元整;
(3)10的表示方式,例如,110元表示为:
壹佰壹拾元整,而10则表示为:
拾元整。
提示:
将字符串型转换为浮点型可以用Float.parseFloat(s)函数转换。
三、实验要求
1、能正确的进行数据转换;
2、能在输入数据错误的情况下给出提示。
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、Eclipse程序集成环境。
五、实验步骤
1、根据题目要求,画出程序流程图;
2、给出本程序的java数据结构;
3、编写出程序;
4、调试程序:
给出一些测试数据,检查输出结果。
六、测试数据
输入数据:
1、123
2、123.11
3、123.10
4、0123.11
正确结果:
1、壹佰二十三元
2、壹佰二十三元一角一分
3、壹佰二十三元一角
4、壹佰二十三元一角一分
七、实验报告(学生完成)
实验报告应包括以下几个部分:
1、程序流程图;
2、程序的数据结构设计;
3、程序的源代码(程序中必须有相关的注释信息)
4、程序运行结果的分析。
八、思考题(学生完成)
1、Java语言中的循环语句与其他语言中的有何区别?
2、本实验中的测试数据前缀0和后缀0怎样处理比较好?
实验3字符串(String类)的使用
一、实验目的
1、区分String类和StringBuffer类;
2、掌握String类和StringBuffer类的基本使用方法
3、通过上机编写和运行关于字符串的程序来加深对String类和StringBuffer类等的了解
二、实验内容
本实验的内容为:
编写一个与居民身份证有关的程序,可以是Applet或者Application。
要求创建一个类,该类至少具有以下3个方法:
1)检验居民身份证的真伪,若为假身份证,需要提供其虚假信息,比如居民出生年月日有错等。
2)获取真实居民身份证的信息,该信息包括4个部分:
①该身份证是新身份证还是旧身份证。
②该居民身份证的地址码,如果同学有《最新县及县以上行政区划代码》可得到居民身份证详细的省、市、县(区)的名称,若没有则只需显示地址码信息即可。
③该居民的出生年月日。
④该居民的性别。
3)将15位的旧身份证转换成18位的新身份证。
【参考资料】
1)旧身份证共有15位,其格式如下:
[假设身份证号码为:
440524800101001]
地址码
出生日期码
顺序码
44
05
24
80
01
01
001
广东省
汕头市
潮阳县
出生年
出生月
出生日
2)新身份证共有18位,其格式如下:
[假设身份证号码为:
440524198001010013]
地址码
出生日期码
顺序码
校验码
44
05
24
1980
01
01
001
3
广东省
汕头市
潮阳县
出生年
出生月
出生日
3)地址码表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行,有条件的同学可以到“中华人民共和国国家统计局”网站()查看《最新县及县以上行政区划代码(截止2003年6月30日)》,该文章的网址为“
4)生日期码表示编码对象出生的年、月、日,按GB/T7408的规定执行。
年、月、日代码之间不用分隔符。
旧身份证号码的出生日期码只有6位,而新身份证的出生日期码有8位,年份采用4位表示。
5)顺序码表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性,该顺序码有3位。
6)校验码采用ISO7064:
1983,MOD11-2校验码系统,该校验码只有1位,在新身份证中被采用,其公式为∑(ai×Wi)(mod11),在公式中:
i——表示号码字符从右至左包括校验码在内的位置序号;
ai——表示第i位置上的号码字符值;
Wi——表示第i位置上的加权因子,其数值依据公式Wi=2(i-1)(mod11)计算得出。
在求出∑(ai×Wi)(mod11)值后依据下表得到校验码:
∑(ai×Wi)(mod11)值
0
1
2
3
4
5
6
7
8
9
10
校验码字符值
1
0
X
9
8
7
6
5
4
3
2
三、实验要求
1、要求学生在上机实验前一定要非常清楚并灵活运用该章所讲过的内容;
2、在上机实验前编写好实验内容要求的程序,以便上机实验时调试、修改等。
3、上机实验后,每位学生必须对该次实验内容写一份实验报告,包括程序内容、调试过程、运行情况和结果等。
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、Eclipse程序集成环境。
五、实验步骤
1、根据题目要求,画出程序流程图;
2、给出本程序的java数据结构;
3、编写出程序;
4、调试程序:
给出一些测试数据,检查输出结果。
七、实验报告(学生完成)
实验报告应包括以下几个部分:
1、程序流程图;
2、程序的数据结构设计;
3、程序的源代码(必须包含相关的注释信息)
4、程序运行结果的分析。
八、思考题(学生完成)
1.Java程序中字符串常量使用什么类来表示?
字符串变量又使用什么类来表示?
它们主要区别在哪里?
2.请说明程序Strings1="Ilike";s1+="Java!
";和程序StringBuffers1=newStringBuffer("Ilike");s1.append("Java!
");的区别。
依据你得出的结论,如果程序需要处理大量的字符串连接操作,应该尽量使用String类还是StringBuffer类?
实验4类与对象
一、实验目的
本实验的目的用于指导读者掌握Java语言面向对象的程序设计方法,理解对象的封装等概念,要求读者在调试实例程序后,总结出面向对象的事务定义以及以对象的形式进行封装等内容。
二、实验内容
1、编写一个名为“复数”的类,包含复数的实部和虚部(数据成员),以及复数之间的基本算术运算:
加、减(方法成员),并要求复数加减运算,程序运行中能对给定的复数进行运算,并打印运算的结果。
2、用类来描述游戏角色的交手次数、经验值、生命值之间的关系,并断定角色决斗的胜负。
三、实验要求
1、加减运算能够接收不同类型的参数既可以实现复数与实数的加减、复数与复数的加减运算。
2、两游戏角色决斗。
角色1交手次数+1,生命值-1,经验值+2;角色2交手次数+1,生命值-2,经验值+3。
经验值每增加50时,生命值+1;生命值<0判为负。
生命值初始为1000,经验值初始为0。
3、给定二个不同的角色,判定交手的胜负关系。
4、实验报告给出决斗结果和交手次数
5、实验报告给出所有源代码。
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、Eclipse程序集成环境。
五、实验步骤
内容一:
1、创建“复数”类Complex,定义实部、虚部成员
2、定义构造函数接收二个double参数用来初始化数据成员
3、定义二个复数运算函数plus()以及minus()各接收一个复数类型以实现复数与复数的加减运算。
4、定义二个复数运算函数plus()以及minus()各接收一个double类型以实现复数与与实数的加减运算。
4、定义一个打印方法。
5、在main()方法中创建复数对象并调用相关方法来验证。
内容二:
1、建立角色类Role,给出相应的成员,并能以生命值、经验值初始化角色对象。
2、在角色类中建立fight方法,接收一个角色类型的参数并与之“战斗”,返回胜者信息。
3、在主函数中初始化二个角色,调用fight方法。
六、测试数据
略
七、实验报告(学生完成)
实验报告应包括以下几个部分:
1、程序流程图;
2、程序的数据结构设计;
3、程序的源代码及相关注释
4、程序运行结果的分析。
八、思考题(学生完成)
1.定义一个点类“Point”。
Point类的属性有x轴和y轴坐标,可以通过方法setX()设置x轴坐标,方法setY()设置y轴坐标,方法getX()获得x轴坐标,方法getY()获得y轴坐标。
编写一个测试类PointTest来创建Point类的对象,测试该类。
2.编程定义一个栈类,它封装了栈数组,判断栈空方法、判断栈满方法以及进栈和出栈。
实验5继承与多态
一、实验目的
1、掌握类的继承关系和派生方法;
2、掌握多态的概念与使用;
3、掌握接口的定义与使用;
4、掌握包的概念与使用。
二、实验内容
1、利用接口编写计算三角形、梯形面积及周长的程序。
2、计算式1:
y=x+x/2+x/3+…+x/n;
式2:
y=x+x/2!
+x/3!
+…+x/n!
;
要求:
①x为实数,n为正整数。
②任意输入当n为奇数时,按照式1计算,当n为偶数时,按照式2计算。
③利用继承机制编程
三、实验要求
1、编写源程序
2、要利用继承机制编程。
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、Eclipse程序集成环境。
五、实验步骤
1、输入源程序;
2、利用相关工具(Eclipse运行本程序);
六、测试数据
略
七、实验报告(学生完成)
实验报告应包括以下几个部分:
1、程序流程图;
2、程序的数据结构设计;
3、程序的源代码
4、程序运行结果的分析。
八、思考题(学生完成)
1、Java中继承和多态的行为与C++中的有何不同?
2、Java中的继承和多态的书写格式与C++有何不同?
实验6常用工具类
一、实验目的
1、通过编程实践掌握几种在Java中预定义的常用工具类
List、Set和Map
Vector和Stack
2、通过实验理解和掌握JavaApplet的基本知识
二、实验内容
1、使用本章介绍的一种集合类型编写程序,实现从控制台任意输入若干名字,如Mike、Jone、Benny……,将它们以字典序按升序方式输出。
2、从下面文本中计算单词“Java”、“language”、“simple”的出现次数,并按次数从大到小输出结果。
文本内容为:
Javaiscertainlyagoodprogramminglanguage.Javawasneverjustalanguage.Javaisawholeplatform.Javahasalotofnicelanguagefeatures.Java2Dwasdesignedsothatsimpleoperationsaresimpleandcomplexoperationsarefeasible.
3、编写一个Applet,显示当前日期和时间。
显示的文字颜色、字体、大小均在HTML文件中定义。
提示:
可以使用java.util包中的Calendar类,该类提供了年、月、日、小时、分、秒等信息,可以使用intget(intcalendarField)方法来返回由参数calendarField指定的分量值,如若实参为Calendar.YEAR,则该方法将返回当前的年份。
因此可通过calendarField指定的分量Calendar.YEAR、Calendar.MONTH、Calendar.DATE、Calendar.HOUR、Calendar.MINUTE和Calendar.SECOND调用get()方法来取得当前的日期和时间。
三、实验要求
1、编写源程序
2、要利用java的工具类。
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、Eclipse程序集成环境。
五、实验步骤
1、输入源程序;
2、利用相关工具(Eclipse运行本程序);
六、测试数据
略
七、实验报告(学生完成)
实验报告应包括以下几个部分:
1、程序流程图;
2、程序的数据结构设计;
3、程序的源代码及相关注释
4、程序运行结果的分析。
八、思考题(学生完成)
1、列举几种可以遍历集合对象中元素的方法。
2、如何向一个HashMap对象中添加元素?
实验7GUI编程及事件处理
一、实验目的
1、了解和掌握Java语言的关于GUI编程的基础类(JFC),并对AWT包和Swing包中的组件比较。
2、掌握Swing包的基本组件如JLable、JTextField、JPasswordField、JTextArea、JButton
3、掌握常见的容器组件如JPanel、JFrame等。
4、掌握Swing的5种布局管理器来管理布局方式。
5、理解和掌握java的事件处理机制
二、实验内容
1.编写一个java程序Counter.java,实现一个计算器的图形界面,实现”+,-,*,/”这些基本运算。
2.编写一个java程序FileMenu.java,设计一个简易文件管理菜单。
菜单有“文件”、“编辑”、“格式”、“窗口”、“帮助”。
其中,文件菜单项有子菜单项:
新建、打开、关闭、退出;编辑菜单项有子菜单项:
复制、粘贴、查找、替换、定位;“格式”菜单可以设置前景色、背景色、字体的风格、指定字体格式等内容;帮助菜单项有子菜单项:
用户帮助、版本说明。
采用Windows操作系统的外观。
3.编写程序,实现通过鼠标轮实现对一个圆形的大小控制及通过键盘实现圆形的移动。
4.编写程序,实现用户注册的功能。
具体包括用户的用户名、密码、确认密码、性别、出生年月。
另外设计两个按钮“确认”和“取消”。
当用户按下“确认”按钮时,可以将注册信息在屏幕上显示出来。
如果按下“取消”,则退出用户注册。
要求使用布局管理器(布局管理器主要包括:
FlowLayout,BorderLayout,GridLayout,CardLayout,GridBagLayout。
)
三、实验要求
1、了解java系统图形用户界面的基本工作原理和界面的设计步骤;
2、了解图形用户界面的事件响应机制;
3、掌握图形用户界面各种常用的基本组建的使用方法及其事件响应;
4、掌握图形用户界面各种布局策略的设计与使用。
四、实验环境
1、PC微机;
2、DOS操作系统或Windows操作系统;
3、Sdk程序集成环境或Jbuilder程序集成环境。
五、实验步骤
1、输入源程序;
2、利用相关工具(Eclipse运行本程序);
六、测试数据
略
七、实验报告(学生完成)
实验报告应包括以下几个部分:
1、程序流程图;
2、程序的数据结构设计;
3、程序的源代码及相关注释
4、程序运行结果的分析。
八、思考题(学生完成)
1、Java中的图形界面的各个类之间的关系?
2、GridBagLayout的布局特点?
3.常见的事件处理方式有哪几种?
请比较各种方式的特点。
实验8Java中的多线程
一、实验目的
掌握Java多线程应用程序设计方法,并了解在Java用程序中控制线程状态的方法。
二、实验内容
随着计算机的飞速发展,个人计算机上的操作系统也纷纷采用多任务和分时设计,将早期只有大型计算机才具有的系统特性带到了个人计算机系统中。
一般可以在同一时间内执行多个程序的操作系统都有进程的概念。
一个进程就是一个执行中的程序,而每一个进程都有自己独立的一块内存空间、一组系统资源。
在进程概念中,每一个进程的内部数据和状态都是完全独立的。
Java程序通过流控制来执行程序流,程序中单个顺序的流控制称为线程,多线程则指的是在单个程序中可以同时运行多个不同的线程,执行不同的任务。
多线程意味着一个程序的多行语句可以看上去几乎在同一时间内同时运行。
线程与进程相似,是一段完成某个特定功能的代码,是程序中单个顺序的流控制;但与进程不同的是,同类的多个线程是共享一块内存空间和一组系统资源,而线程本身的数据通常只有微处理器的寄存器数据,以及一个供程序执行时使用的堆栈。
所以系统在产生一个线程,或者在各个线程之间切换时,负担要比进程小的多,正因如此,线程被称为轻负荷进程(light-weightprocess)。
一个进程中可以包含多个线程。
本实验中要求大家掌握一下几个程序,并给出结果:
1、通过继承类Thread构造线程体
classSimpleThreadextendsThread{
publicSimpleThread(Stringstr){
super(str);//调用其父类的构造方法
}
publicvoidrun(){//重写run方法
for(inti=0;i<10;i++){
System.out.println(i+""+getName());
//打印次数和线程的名字
try{
sleep((int)(Math.random()*1000));
//线程睡眠,把控制权交出去
}catch(InterruptedExceptione){}
}
System.out.println("DONE!
"+getName());
//线程执行结束
}
}
publicclassTwoThreadsTest{
publicstati
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 资料 课件 Java 实验 指导书