《面向对象程序设计Java》实验报告.docx
- 文档编号:28070195
- 上传时间:2023-07-08
- 格式:DOCX
- 页数:48
- 大小:64.14KB
《面向对象程序设计Java》实验报告.docx
《《面向对象程序设计Java》实验报告.docx》由会员分享,可在线阅读,更多相关《《面向对象程序设计Java》实验报告.docx(48页珍藏版)》请在冰豆网上搜索。
《面向对象程序设计Java》实验报告
面向对象程序设计
(Java)
实验报告
院系:
信息科学与技术学院
专业:
信息管理与信息系统
班级:
学生姓名:
实验报告评分标准
项目
要求
得分
实验准备
(25分)
实验目的明确
5
实验内容理解透彻
5
实验解决方案/设计完整合理
程序总体框架设计完整
10
测试方案合理
5
实验过程
(45分)
发现的问题
5
问题的分析
15
问题的解决方法
10
问题解决方法的代码实现及测试
15
实验报告撰写
(15分)
内容翔实无缺漏
5
如实反应实验过程
10
实验总结
(15分)
实验结果的分析
5
按照结果对原实验解决方案的改进
5
实验内容的发散考虑
5
评分标准的说明:
1.各子项基本完成可计满分;
2.各个子项中缺少或者完成不佳者,该子项可视情况直接记为0分;
3.抄袭实验报告、实验方案、代码、设计或实验结果者,该单项可记0分;
4.实验过程中无故缺勤、玩游戏或者做与实验无关内容者,本实验记0分。
实验报告
院(系):
信息学院课程名称:
面向对象程序设计(Java)日期:
班级
信A1232
学号
实验室
专业
信息系统与信息管理
姓名
庄彦兴
计算机号
实验
名称
熟悉Java程序开发环境
成绩评定
所用
软件
JDK、记事本或EditPlus、JavaIDE
教师签名
实
验
目
的
或
要
求
1.熟悉安装和配置JDK开发环境
2.熟悉安装和配置IDE开发工具
3.掌握Java程序编辑、编译和运行的过程
实
验
步
骤
、
心
得
体
会
1.写出Java程序开发环境的安装配置一般步骤
当前计算机系统安装路径:
__
当前计算机系统设置的环境变量:
PATH_____________________________
__________________
CLASSPATH_____________________________________________________
__________
2.用记事本输入如下程序并通过配置好的JDK环境,利用相关命令获取结果
publicclassHelloJava{
publicstaticvoidmain(String[]args){
System.out.println("HelloJava!
");
}
}
源文件名:
______
编译命令:
_________
执行命令:
_____________
命令行输出结果:
________________
实验报告
院(系):
信息学院课程名称:
面向对象程序设计(Java)日期:
班级
学号
实验室
专业
姓名
计算机号
实验
名称
数据类型应用
成绩评定
所用
软件
JDK、记事本或EditPlus、JavaIDE
教师签名
实
验
目
的
或
要
求
1.掌握Java程序设计语言的基本要素
2.熟悉并使用Java语言中的引用数据类型-数组
实
验
步
骤
、
心
得
体
会
1.程序为输出希腊字母表
publicclassGreekAlphabet{
publicstaticvoidmain(Stringargs[]){
intstartPosition=0,endPosition=0;
charcStart='α',cEnd='ω';
【代码1】//cStart做int型转换据运算,并将结果赋值给startPosition
【代码2】//cEnd做int型转换运算,并将结果赋值给endPosition
System.out.println("希腊字母\'α\'在unicode表中的顺序位置:
"+(int)c);
System.out.println("希腊字母表:
");
for(inti=startPosition;i<=endPosition;i++){
charc='\0';
【代码3】//i做char型转换运算,并将结果赋值给c
System.out.print(""+c);
if((i-startPosition+1)%10==0){
System.out.println("");
}}}}
【代码1】:
【代码2】:
【代码3】:
2.程序为猜数字游戏
importjavax.swing.JOptionPane;
publicclassGuessNumber{
publicstaticvoidmain(Stringargs[]){
System.out.println("给你一个1至100之间的整数,请猜测这个数");
intrealNumber=(int)(Math.random()*100)+1;
intyourGuess=0;
Stringstr=JOptionPane.showInputDialog("输入您的猜测:
");
yourGuess=Integer.parseInt(str);
while(【代码1】){//循环条件
if(【代码2】){//条件代码
str=JOptionPane.showInputDialog("猜大了,再输入你的猜测:
");
yourGuess=Integer.parseInt(str);
}elseif(【代码3】){//条件代码
str=JOptionPane.showInputDialog("猜小了,再输入你的猜测:
");
yourGuess=Integer.parseInt(str);
}
}
System.out.println("猜对了!
");
}}
【代码1】:
yourGuess!
=realNumber
【代码2】:
yourGuess>realNumber
【代码3】:
yourGuess 3.程序为数组及其排序 importjava.util.*; publicclassArrayAndSort{ publicstaticvoidmain(Stringargs[]){ int[]a={12,34,9,23,45,6,45,90,123,19,34}; 【代码1】//对数组a进行排序 System.out.println(Arrays.toString(a)); intnumber=45; intindex=【代码2】//在数组a中二分查找number if(index>=0){ System.out.println(number+"和数组中索引为"+index+"的元素值相同"); }else{ System.out.println(number+"不与数组中任何元素值相同"); }}} 【代码1】: Arrays.sort(a); 【代码2】: Arrays.binarySearch(a,number); 实验报告 院(系): 信息学院课程名称: 面向对象程序设计(Java)日期: 班级 学号 实验室 专业 姓名 计算机号 实验 名称 测试语句结构 成绩评定 所用 软件 JDK、记事本或EditPlus、JavaIDE 教师签名 实 验 目 的 或 要 求 1.掌握Java程序基本语句结构 实 验 步 骤 、 心 得 体 会 1.编程求两个整数的最大公约数 2.编程请打印出如下九九乘法表 *|123456789 -------|------------------------------------ 1|1 2|24 3|369 4|481216 5|510152025 6|61218243036 7|7142128354249 8|816243240485664 9|91827364554637281 publicclassMultiTable{ 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(); }}} 实验报告 院(系): 信息学院课程名称: 面向对象程序设计(Java)日期: 班级 学号 实验室 专业 姓名 计算机号 实验 名称 类、对象基础知识 成绩评定 所用 软件 JDK、记事本或EditPlus、JavaIDE 教师签名 实 验 目 的 或 要 求 1.掌握类与对象的简单创建及使用 2.熟练掌握对象的销毁 实 验 步 骤 、 心 得 体 会 1.编程封装三角形、梯形类 classTrangle{ doublesideA,sideB,sideC,area,length; booleanboo; publicTrangle(doublea,doubleb,doublec){ 【代码1】//参数a,b,c分别赋值给sideA,sideB,sideC if(【代码2】){//a,b,c构成三角形的条件表达式 【代码3】//给boo赋值。 }else{ 【代码4】//给boo赋值。 } } doublegetLength(){ 【代码5】//方法体,要求计算出length的值并返回 } publicdoublegetArea(){ if(boo){ doublep=(sideA+sideB+sideC)/2.0; area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)); returnarea; }else{ System.out.println("不是一个三角形,不能计算面积"); return0; } } publicvoidsetABC(doublea,doubleb,doublec){ 【代码6】//参数a,b,c分别赋值给sideA,sideB,sideC if(【代码7】){//a,b,c构成三角形的条件表达式 【代码8】//给boo赋值。 }else{ 【代码9】//给boo赋值。 } } } classLader{ doubleabove,bottom,height,area; Lader(doublea,doubleb,doubleh){ 【代码10】//方法体,将参数a,b,c分别赋值给above,bottom,height } doublegetArea(){ 【代码11】//方法体,,要求计算出area返回 } } publicclassAreaAndLength{ publicstaticvoidmain(Stringargs[]){ doublelength,area; Trangletrangle; Laderlader; 【代码12】//创建对象trangle 【代码13】//创建对象lader 【代码14】//trangle调用方法返回周长并赋值给length System.out.println("三角形的周长: "+length); 【代码15】//trangle调用方法返回面积并赋值给area System.out.println("三角形的面积: "+area); 【代码16】//lader调用方法返回面积并赋值给area System.out.println("梯形的面积: "+area); 【代码17】//trangle调用方法设置三个边,要求将三个边修改为12,34,1 【代码18】//trangle调用方法返回面积并赋值给area System.out.println("三角形的面积: "+area); 【代码19】//trangle调用方法返回周长并赋值给length System.out.println("三角形的周长: "+length); }} 【代码1】: 【代码2】: 【代码3】: 【代码4】: 【代码5】: 【代码6】: 【代码7】: 【代码8】: 【代码9】: 【代码10】: 【代码11】: 【代码12】: 【代码13】: 【代码14】: 【代码15】: 【代码16】: 【代码17】: 【代码18】: 【代码19】: 实验报告 院(系): 信息学院课程名称: 面向对象程序设计(Java)日期: 班级 学号 实验室 专业 姓名 计算机号 实验 名称 包创建及管理与成员访问权限控制 成绩评定 所用 软件 JDK、记事本或EditPlus、JavaIDE 教师签名 实 验 目 的 或 要 求 1.掌握成员访问权限控制 2.熟练掌握包的创建及包的导入 实 验 步 骤 、 心 得 体 会 1.编程测试package语句、import语句 实验报告 院(系): 信息学院课程名称: 面向对象程序设计(Java)日期: 班级 学号 实验室 专业 姓名 计算机号 实验 名称 final、this、super关键字及JAR文件使用 成绩评定 所用 软件 JDK、记事本或EditPlus、JavaIDE 教师签名 实 验 目 的 或 要 求 1.掌握super、this关键字的使用 2.掌握final关键字的使用 3.了解JAR文件的导入 实 验 步 骤 、 心 得 体 会 1.编程举例使用super、this关键字 2.编程举例使用final关键字 实验报告 院(系): 信息学院课程名称: 面向对象程序设计(Java)日期: 班级 学号 实验室 专业 姓名 计算机号 实验 名称 理解与使用继承及抽象类、抽象方法、接口 成绩评定 所用 软件 JDK、记事本或EditPlus、JavaIDE 教师签名 实 验 目 的 或 要 求 1.掌握Java语言面向对象的继承机制 2.掌握类的特殊形式-接口 实 验 步 骤 、 心 得 体 会 1.代码填空 classA{ 【代码1】//声明一个float型实例变量a 【代码2】//声明一个float型类变量b,即static变量b voidsetA(floata){ 【代码3】//将参数a的值赋值给成员变量a } voidsetB(floatb){ 【代码4】//将参数b的值赋值给成员变量b } floatgetA(){ returna; } floatgetB(){ returnb; } voidinputA(){ System.out.println(a); } staticvoidinputB(){ System.out.println(b); } } publicclassExample{ publicstaticvoidmain(Stringargs[]){ 【代码5】//通过类名操作类变量b,并赋值100 【代码6】//通过类名调用方法inputB() Acat=newA(); Adog=newA(); 【代码7】//cat象调用方法setA(inta)将cat的成员a的值设置为200 【代码8】//cat调用方法setB(intb)将cat的成员b的值设置为400 【代码9】//dog象调用方法setA(inta)将dog的成员a的值设置为150 【代码10】//dog调用方法setB(intb)将dog的成员b的值设置为300 【代码11】//cat调用inputA()。 【代码12】//cat调用inputB()。 【代码13】//dog调用inputA()。 【代码14】//dog调用inputB()。 } } 【代码1】: 【代码2】: 【代码3】: 【代码4】: 【代码5】: 【代码6】: 【代码7】: 【代码8】: 【代码9】: 【代码10】: 【代码11】: 【代码12】: 【代码13】: 【代码14】: 2.代码填空 interfaceComputerWeight{ publicdoublecomputeWeight(); } classTelevisionimplementsComputerWeight{ 【代码1】//实现computeWeight()方法。 } classComputerimplementsComputerWeight{ 【代码2】//实现computeWeight()方法。 } classWashMachineimplementsComputerWeight{ 【代码3】//实现computeWeight()方法。 } classCar{ ComputerWeight[]goods; doubletotalWeights=0; Car(ComputerWeight[]goods){ this.goods=goods; } publicdoublegetTotalWeights(){ totalWeights=0; 【代码4】//计算totalWeights returntotalWeights; } } publicclassRoad{ publicstaticvoidmain(Stringargs[]){ ComputerWeight[]goodsOne=newComputerWeight[50], goodsTwo=newComputerWeight[22]; for(inti=0;i if(i%3==0) goodsOne[i]=newTelevision(); elseif(i%3==1) goodsOne[i]=newComputer(); elseif(i%3==2) goodsOne[i]=newWashMachine(); } for(inti=0;i if(i%3==0) goodsTwo[i]=newTelevision(); elseif(i%3==1) goodsTwo[i]=newComputer(); elseif(i%3==2) goodsTwo[i]=newWashMachine(); } Car大货车=newCar(goodsOne); System.out.println("大货车装载的货物重量: " +大货车.getTotalWeights()); Car小货车=newCar(goodsTwo); System.out.println("小货车装载的货物重量: " +小货车.getTotalWeights()); } } 【代码1】: 【代码2】: 【代码3】: 【代码4】: 实验报告 院(系): 信息学院课程名称: 面向对象程序设计(Java)日期: 班级 学号 实验室 专业 姓名 计算机号 实验 名称 理解与使用内部类、匿名类及异常类 成绩评定 所用 软件 JDK、记事本或EditPlus、JavaIDE 教师签名 实 验 目 的 或 要 求 1.掌握Java语言中的内部类机制,匿名类实现机制 2.理解系统异常处理的机制 实 验 步 骤 、 心 得 体 会 1.代码填空 Teacher.java publicclassTeacher{ intnumberOne,numberTwo; Stringoperator=""; booleanright; publicintgiveNumberOne(intn){ numberOne=(int)(Math.random()*n)+1; returnnumberOne; } publicintgiveNumberTwo(intn){ numberTwo=(int)(Math.random()*n)+1; returnnumberTwo; } publicStringgiveOperator(){ doubled=Math.random(); if(d>=0.5) operator="+"; else operator="-"; returnoperator; } publicbooleangetRight(intanswer){ if(operator.equals("+")){ if(answer==numberOne+numberTwo) right=true; else right=false; }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象程序设计Java 面向 对象 程序设计 Java 实验 报告