Java程序设计实验报告分析.docx

上传人:b****5 文档编号:15217045 上传时间:2023-07-02 格式:DOCX 页数:20 大小:136.22KB
下载 相关 举报
Java程序设计实验报告分析.docx_第1页
第1页 / 共20页
Java程序设计实验报告分析.docx_第2页
第2页 / 共20页
Java程序设计实验报告分析.docx_第3页
第3页 / 共20页
Java程序设计实验报告分析.docx_第4页
第4页 / 共20页
Java程序设计实验报告分析.docx_第5页
第5页 / 共20页
Java程序设计实验报告分析.docx_第6页
第6页 / 共20页
Java程序设计实验报告分析.docx_第7页
第7页 / 共20页
Java程序设计实验报告分析.docx_第8页
第8页 / 共20页
Java程序设计实验报告分析.docx_第9页
第9页 / 共20页
Java程序设计实验报告分析.docx_第10页
第10页 / 共20页
Java程序设计实验报告分析.docx_第11页
第11页 / 共20页
Java程序设计实验报告分析.docx_第12页
第12页 / 共20页
Java程序设计实验报告分析.docx_第13页
第13页 / 共20页
Java程序设计实验报告分析.docx_第14页
第14页 / 共20页
Java程序设计实验报告分析.docx_第15页
第15页 / 共20页
Java程序设计实验报告分析.docx_第16页
第16页 / 共20页
Java程序设计实验报告分析.docx_第17页
第17页 / 共20页
Java程序设计实验报告分析.docx_第18页
第18页 / 共20页
Java程序设计实验报告分析.docx_第19页
第19页 / 共20页
Java程序设计实验报告分析.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

Java程序设计实验报告分析.docx

《Java程序设计实验报告分析.docx》由会员分享,可在线阅读,更多相关《Java程序设计实验报告分析.docx(20页珍藏版)》请在冰点文库上搜索。

Java程序设计实验报告分析.docx

Java程序设计实验报告分析

 

学生实验报告

(理工类)

 

课程名称:

JAVA程序设计专业班级:

13电子信息工程

(2)

学生学号:

1305102056学生姓名:

许伟铭

所属院部:

软件工程学院指导教师:

王倩倩

2015——2016学年第2学期

 

金陵科技学院教务处制

实验报告书写要求

实验报告原则上要求学生手写,要求书写工整。

若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。

纸张一律采用A4的纸张。

实验报告书写说明

实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。

各院部可根据学科特点和实验具体要求增加项目。

填写注意事项

(1)细致观察,及时、准确、如实记录。

(2)准确说明,层次清晰。

(3)尽量采用专用术语来说明事物。

 

(4)外文、符号、公式要准确,应使用统一规定的名词和符号。

(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。

实验报告批改说明

实验报告的批改要及时、认真、仔细,一律用红色笔批改。

实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。

实验报告装订要求

实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

 

实验项目名称:

JAVA编程基础实验学时:

4

同组学生姓名:

————实验地点:

1514/A203

实验日期:

2016.04.08实验成绩:

批改教师:

王倩倩批改时间:

 

一、实验目的和要求

(1)熟练掌握JDK1.7及EclipseKeplerServiceRelease1(下简称Eclipse)编写调试Java应用程序及Java小程序的方法;

(2)熟练掌握Java应用程序的结构;

(3)了解Java语言的特点,基本语句、运算符及表达式的使用方法;

(4)熟练掌握常见数据类型的使用;

(5)熟练掌握if-else、switch、while、do-while、for、continue、break、return语句的使用方法;

(6)熟练掌握数组和字符串的使用;

(7)调试程序要记录调试过程中出现的问题及解决办法;

(8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验;

(9)做完实验后给出本实验的实验报告。

二、实验仪器和设备

奔腾以上计算机,Windows操作系统,装有JDK1.7和Eclipse软件。

三、实验过程

(1)分别使用JDK命令行和Eclipse编译运行Java应用程序。

记录操作过程。

Java应用程序参考如下:

思考:

1.适当添加注释信息,通过javadoc生成注释文档;

2.为主方法传递参数“Helloworld”字符串,并输出;

3.压缩生成".jar"文件。

(2)分别使用JDK命令行和Eclipse编译JavaApplet,并建立HTML文档运行该Applet。

记录操作过程。

Java小应用程序参考如下:

HTML文档参考如下:

(3)输出下列数字形式。

①n=4

0000

0111

0122

0123

②n=4

1

121

12321

1234321

(4)采用数组输出等腰三角形的杨辉三角。

(5)判断回文字符串

回文是一种“从前向后读”和“从后向前读”都相同的字符串。

如“rotor”是一个回文字符串。

程序中使用了两种算法来判断回文字符串:

算法一:

分别从前向后和从后向前依次获得原串str的一个字符ch1、ch2,比较ch1和ch2,如果不相等,则str肯定不是回文串,yes=false,立即退出循环:

否则继续比较,直到字符全部比较完,yes的值仍为true,才能肯定str是回文串。

算法二:

将原串str反转成temp串,再比较两串,如果相等则是因文字符串。

要求:

(1)编译调试程序之前应配置好环境变量;

(2)要分别掌握用JDK命令行和Eclipse集成开发环境调试Java程序;

(3)注意Java两大类程序:

应用程序和小程序的区别。

程序清单:

(建议程序中适当添加注释信息,增强可读性;较长程序可分栏书写,保证报告排版整洁美观。

 

(实验一程序清单续1)

(3)①publicclassshuxing{

publicstaticvoidmain(String[]args){

intn=4;

for(inti=0;i

{

for(intj=0;j

{

System.out.print(""+((i

i:

j));

}

System.out.println();

}

}

}

②publicclassshuxingtower{

publicstaticvoidmain(String[]args){

intn=4;

for(inti=0;i<=n;i++)

{

for(intj=1;j<=n-i;j++)

System.out.print("");

for(intj=1;j<=i;j++)

System.out.print(""+j);

for(intj=i-1;j>0;j--)

System.out.print(""+j);

System.out.println();

}

}

}

(4)publicclassyanghui{

publicstaticvoidmain(String[]args){

int[][]a=newint[5][5];

for(inti=0;i<5;i++)

{

a[i][0]=1;

a[i][i]=1;

}

for(inti=2;i<5;i++)

{

for(intj=1;j

a[i][j]=a[i-1][j-1]+a[i-1][j];

}

for(inti=0;i<5;i++)

{

for(intk=0;k<=5-i;k++)

{

System.out.print("");

}

for(intj=0;j<=i;j++)

{

System.out.print(a[i][j]+"");

}

System.out.println();

}

}

}

(5)publicclasspalindrome{

publicstaticvoidmain(String[]args){

Stringstr="rotor";

inti=0;

intn=str.length();

booleanyes=true;

System.out.println("str="+str);

charch1,ch2;

while(yes&&(i

{

ch1=str.charAt(i);

ch2=str.charAt(n-i-1);

if(ch1==ch2)i++;

elseyes=false;

}

System.out.println("算法1:

"+yes);

Stringtemp="",sub="";

for(i=0;i

{

sub=str.substring(i,i+1);

temp=sub+temp;

}

System.out.println("temp="+temp);

System.out.println("算法2:

"+str.equals(temp));

}

}

四、实验结果与分析

(1)

 

(2)

 

(3)①②

 

(4)

 

(5)

 

实验项目名称:

面向对象编程实验学时:

8

同组学生姓名:

————实验地点:

实验日期:

实验成绩:

批改教师:

批改时间:

 

一、实验目的和要求

(1)熟练掌握Java语言类定义的基本语法;

(2)熟练掌握类成员的访问控制,对象建立的方法;

(3)熟练掌握类构造方法、成员方法的定义和重载;

(4)熟练掌握类继承、多态和抽象性;

(5)熟练掌握接口的定义和实现方法;

(6)掌握基本的异常处理方法;

(7)调试程序要记录调试过程中出现的问题及解决办法;

(8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验;

(9)做完实验后给出本实验的实验报告。

二、实验仪器和设备

奔腾以上计算机,Windows操作系统,装有JDK1.7和Eclipse软件。

三、实验过程

(1)设计复数类,成员变量包括实部和虚部,成员方法包括实现复数加法、减法、字符串描述、比较是否相等等操作。

(2)设计三角形类,继承图形抽象类,实现面积接口和周长接口,计算三角形面积和周长。

(3)包的建立与使用:

设计计算器类Calculator,计算加、减、乘、除,并且打包为mypackage。

观察源文件目录下是否生成了mypackage文件夹,在该文件夹中是否有Calculate.class文件。

编辑PackageDemo.java,保存在Calculator.java同一目录下,引用计算器类的各方法显示计算结果。

(4)编码实现多态在工资系统中的应用:

给出一个根据雇员类型利用abstract方法和多态性完成工资单计算的程序。

Employee是抽象类,Employee的子类有Boss(每星期发给他固定工资,而不计工作时间)、CommissionWorker(除基本工资外还根据销售额发放浮动工资)、PieceWorker(按其生产的产品数发放工资)、HourlyWorker(根据工作时间长短发放工资)。

该例的Employee的每个子类都声明为final,因为不需要再继承它们生成子类。

在主测试类Test中测试各类雇员工资计算结果。

提示:

对所有雇员类型都使用earnings()方法,但每个人挣的工资按他所属的雇员类计算,所有雇员类都是从超类Employee派出生的。

在超类中声明earnings()为抽象方法,并且对于每个子类都提供恰当的earnings()的实现方法。

为了计算雇员的工资,程序仅仅使用雇员对象的一个超类引用并调用earnings()方法。

在一个实际的工资系统中,各种Employee对象的引用可以通过一个Employee引用数组来实现。

程序依次使用数组的每个元素(Employee引用)调用每个对象的earnings()方法。

Employee类定义如下:

abstractclassEmployee

{

privateStringfirstName;

privateStringlastName;

publicEmployee(Stringfirst,Stringlast)

{

firstName=first;

lastName=last;

}

publicStringgetEmployeeName()

{

returnfirstName;

}

publicStringgetLastName()

{

returnlastName;

}

publicStringtoString()

{

returnfirstName+lastName;

}

publicabstractStringearnings();

}

(5)异常的捕获:

计算两数相除并输出结果。

使用三个catch子句,分别捕捉输入输出异常、除数为0的异常和参数输入有误异常。

importjava.io.*;

classEx1

{

publicstaticvoidmain(Stringargs[])

{

try{

BufferedReaderstrin=newBufferedReader(

newInputStreamReader(System.in));//建立输入流缓冲区

System.out.print("请输入除数:

");

Stringcl=strin.readLine();//键盘输入

inta=Integer.parseInt(cl);

System.out.print("请输入被除数:

");

cl=strin.readLine();

intb=Integer.parseInt(cl);

intc=b/a;

System.out.println("商为:

"+c);

}

//捕获与I/O有关的异常(空白处补全捕获语句)

//捕获数值转化时的异常,如不能将字符转化成数值

//捕获除数为0的异常

}

}

编译并运行,当产生输入输出异常时显示异常信息;当输入除数为0时,出现算术异常,提示除数为0,并要求重新输入;当输入的不是整数时,如将30输成了3o,出现数值格式异常,提示输入整数。

思考:

是否还有其他异常需要捕获处理?

(6)编写程序包含自定义异常MyException,当100被13和4除时抛出该异常,其余除数显示商值。

要求:

(1)注意选用适当的类成员修饰符(private、protected、public等),比较它们的使用情况;

(2)养成良好的编程习惯,严格按照命名规则为包、类及类成员命名,将每个程序打包,包的命名方式如two.num1表示实验二的第一题;

(3)学会使用Eclipse的各种调试方法;

(4)学会查阅JavaAPI文档,如查找异常类的使用方法。

程序清单:

(建议程序中适当添加注释信息,增强可读性;较长程序可分栏书写,保证报告排版整洁美观。

 

(实验二程序清单续1)

 

(实验二程序清单续2)

 

四、实验结果与分析

 

实验项目名称:

图形用户界面实验学时:

6

同组学生姓名:

————实验地点:

实验日期:

实验成绩:

批改教师:

批改时间:

 

一、实验目的和要求

(1)掌握Swing组件的使用方法;

(2)熟练掌握Swing中常用布局管理器的使用方法;

(3)掌握用户界面动作与事件的处理程序的编写方法;

(4)熟练掌握构造用户界面的方法和常见界面元素的使用;

(5)熟练掌握Java绘图的主要方法。

(6)调试程序要记录调试过程中出现的问题及解决办法;

(7)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验;

(8)做完实验后给出本实验的实验报告。

二、实验仪器和设备

奔腾以上计算机,Windows操作系统,装有JDK1.7和Eclipse软件。

三、实验过程

1.计算器设计

2.模拟裁判评分。

设计如图所示图形界面,显示n个裁判的评分,根据制定规则计算出最后得分。

要求:

图形界面采用表格显示裁判评分,随裁判人数变化而变化;指定分数范围,若超出,则异常处理;得分规则有指定接口约定,由多个接口对象给出多种得分规则,如求平均数值,或去掉一个最高分和一个最低分后,再求平均值。

 

3.编译运行下例,然后修改程序,当使用鼠标单击后在另一位置重新绘制月亮。

【例】在Applet中画月亮。

importjava.awt.*;

importjava.applet.Applet;

publicclassMoonAppletextendsApplet

{

publicvoidpaint(Graphicsg)//在Applet上绘图

{

g.setColor(Color.red);

g.drawString("TheMoon",100,20);

intx=0,y=0;//圆外切矩形左上角坐标

x=this.getWidth()/4;

y=this.getHeight()/4;

intdiameter=Math.min(this.getWidth()/2,this.getHeight()/2);//圆的直径

g.setColor(Color.yellow);

g.fillOval(x,y,diameter,diameter);//画圆

g.setColor(this.getBackground());//设置为背景色

g.fillOval(x-20,y-20,diameter,diameter);//画圆

}

}

4.根据阿基米德螺线的极坐标方程:

r=aθ画出相应图形。

要求:

(1)注意选用适当的布局管理器设计图形用户界面,比较它们的布局情况;

(2)养成良好的编程习惯,严格按照命名规则为包、类及类成员命名,将每个程序打包,包的命名方式如three.num1表示实验三的第一题;

(3)学会使用Eclipse的各种调试方法;

(4)学会查阅JavaAPI文档,如查找事件类的处理里方法。

程序清单:

(建议程序中适当添加注释信息,增强可读性;较长程序可分栏书写,保证报告排版整洁美观。

 

(实验三程序清单续1)

 

(实验三程序清单续2)

 

(实验三程序清单续3)

 

四、实验结果与分析

(分析每题采用的布局管理器、事件处理类和主要功能实现方法。

 

实验项目名称:

Java高级编程实验学时:

6

同组学生姓名:

————实验地点:

实验日期:

实验成绩:

批改教师:

批改时间:

 

一、实验目的和要求

(1)了解文件的概念和文件对象的创建方法;

(2)掌握使用文件输入输出流读写文件的方法;

(3)了解线程的基本概念和多线程程序设计的基本方法;

(4)掌握数据库连接的方法;

(5)创建SQL查询并更新数据库中的信息;

(6)调试程序要记录调试过程中出现的问题及解决办法;

(7)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验;

(8)做完实验后给出本实验的实验报告。

二、实验仪器和设备

奔腾以上计算机,Windows操作系统,装有JDK1.7和Eclipse软件,Access数据库。

三、实验过程

(1)使用文件字节输入/输出流,合并两个指定文件;当文件中的数据已排序时,合并后的数据也要求是已排序的。

(2)将Java的关键字保存在一个文本文件中,判断一个字符串是否为Java的关键字。

(3)编写在构造方法中产生一个1-5之间的随机数的继承Thread类的线程类DelayPrintThread,使得线程体每休眠此随机数时间就打印输出线程号和休眠时间;另外编写应用DelayPrintThread类的Java应用程序TwoThread.java,在main()方法中创建两个线程,并应用sleep()控制主应用程序延迟一段时间。

(4)编写继承Runnable接口的Applet多线程小程序类MultiThreadApplet,编写继承该类的Applet小程序类Clock,在Clock中重新构造父类的run()方法,实现数字时钟的功能,要求不断刷新显示时、分、秒。

要求:

(1)注意选用适当的文件流进行文件读写;

(2)学会两种创建线程的方法,并比较使用场合;

(3)养成良好的编程习惯,严格按照命名规则为包、类及类成员命名,将每个程序打包,包的命名方式如four.num1表示实验四的第一题;

(4)学会查阅JavaAPI文档,如查找常用工具类。

程序清单:

(建议程序中适当添加注释信息,增强可读性;较长程序可分栏书写,保证报告排版整洁美观。

 

(实验四程序清单续1)

 

(实验四程序清单续2)

 

四、实验结果与分析

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2