深圳大学-Java程序设计-选实验2 类的初级应用

实验目的与要求

****实验目的:****初步掌握面向对象编程中类的编写。

实验要求:

(1).运行第4章课件中第4页、第24页、第32页和第34页中的四个程序,并对每一行语句加上注释。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分)

(2).设计并测试一个长方体类Box。(1)数据成员包括length、width和height,分别表示长方体的长、宽和高;(2)定义setInfo(int,int,int)方法设置这3个数据成员的值;(3)定义volume()方法求长方体的体积;(4)定义area()方法求长方体的表面积;(5)定义toString()方法把长方体的长、宽、高以及长方体的体积和表面积转化为字符串并返回。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分)

(3).参照题(2)设计并测试一个圆柱体类Cylindrical。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分)

(4).设计并测试一个研究生类PostGraduateStudent。(1)数据成员包括ID(学号)、name(姓名)以及3门课程math、programming、english;(2)定义comSum()、comAvg()、comMax()计算3门课程的总分、平均分和最高分。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分)

注意:发现抄袭(包括复制&粘贴整句话、整张图),抄袭者 和被抄袭者 成绩记零分

|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| (1).运行第4章课件中第4页、第24页、第32页和第34页中的四个程序,并对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(40分) 第4页中的程序: 程序截图: 运行结果截图: 定义了一个名为Circle的类,Circle类有一个属性radius,表示圆的半径,和一个方法getArea,表示计算圆的面积。 在main方法中,首先创建了一个Circle类型的对象circle,然后给circle的radius属性赋值为1,表示圆的半径为1。接着调用circle的getArea方法,得到圆的面积,并将其赋值给一个double类型的变量area。最后打印area的值,显示圆的面积。 第24页中的程序: 程序截图: 运行结果截图: 首先定义了一个名为Ladder的类。Ladder类表示一个梯形,它有三个属性above,bottom,height,分别表示梯形的上底,下底和高。 Ladder类有一个无参构造方法和一个有参构造方法,用来创建Ladder对象,并给属性赋值。Ladder类还有三个方法,用来修改属性的值。Ladder类有一个computeArea方法,用来计算梯形的面积。 在main方法中,首先声明了两个double类型的变量area1和area2,用来存储两个梯形的面积。然后声明了两个Ladder类型的变量ladderOne和ladderTwo,用来引用两个Ladder对象。接着用new关键字创建了两个Ladder对象,并分别赋值给ladderOne和ladderTwo。其中ladderOne使用无参构造方法创建,然后调用set方法给属性赋值;ladderTwo使用有参构造方法创建,并直接给属性赋值。接下来调用ladderOne和ladderTwo的computeArea方法,得到两个梯形的面积,并分别赋值给area1和area2。最后使用System.out.println方法打印area1和area2的值,显示两个梯形的面积。 第32页中的程序: 程序截图: 运行截图: 首先定义一个叫Ladder的类,它有三个属性,分别表示梯子的上端、高度和低端。 然后再定义了四个方法:setAbove setBottom getAbove getBottom 分别来设置梯子上端、设置梯子的底端、返回梯子上端、返回梯子底端。 最后在main 方法中给Ladder类的静态变量bottom赋值,并创建两个Ladder对象,并调用方法处理它们,最后实现打印。 第34页中的程序: 程序截图: 运行结果截图: 首先定义一个final类型的实例变量MAX,赋值为100,表示这个变量不能被修改,再定义一个final类型的静态变量MIN,赋值为20,表示这个变量也不能被修改,并且属于类而不是对象 然后在main中,先打印Tom类的静态变量MIN的值,因为不能直接访问Tom类的实例变量MAX,所以将报错代码注释掉。接着创建一个Tom对象,并用cat引用它,打印cat对象的实例变量MAX的值,输出100 1. .设计并测试一个长方体类Box。(1)数据成员包括length、width和height,分别表示长方体的长、宽和高;(2)定义setInfo(int,int,int)方法设置这3个数据成员的值;(3)定义volume()方法求长方体的体积;(4)定义area()方法求长方体的表面积;(5)定义toString()方法把长方体的长、宽、高以及长方体的体积和表面积转化为字符串并返回。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分) 程序截图: 运行结果截图: 首先导入java.util包中的Scanner类,用来接收用户输入。 然后定义一个名为Box的类,分别用三个实例变量,表示盒子的长度、宽度、高度 定义setInfo方法,用来设置盒子的尺寸,再分别定义volume、area、toString方法,用来计算体积、计算表面积、返回盒子的信息。 在main 中声明一个Box类型的变量box1,并创建一个Box对象,并用box1引用它。创建一个Scanner对象,并用scan引用它,用来接收用户输入。 调用scan对象的nextInt方法,读取用户输入的三个整数,并分别赋值给a、b、c 调用box1对象的setInfo方法,传入a,b,c三个参数,设置盒子的尺寸。分别调用box1对象的volume、area、toString方法,计算盒子的体积,并赋值给对应变量,最后实现依次打印。 (3).参照题(2)设计并测试一个圆柱体类Cylindrical。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分) 程序截图: 运行截图: 首先导入java.util包中的Scanner类,用来接收用户输入。 然后定义一个名为Cylindrical的类,分别用两个个实例变量,表示圆柱体的半径、高度。定义一个setInfo方法,用来设置尺寸,定义一个volume方法,用来计算体积,定义一个area方法,用来计算表面积,定义一个toString方法,用来返回信息 在main 中声明一个Cylindrical 类型的变量cy1,并创建一个Cylindrical对象,并用cy1引用它。创建一个Scanner对象,并用scan引用它,用来接收用户输入。 调用scan对象的nextInt方法,读取用户输入的整数,并赋值给a、b。调用cy1对象的setInfo方法,传入a,b,c三个参数,设置盒子的尺寸。调用volume、area、toString方法,计算圆柱体的体积、表面积以及所有信息,并依次完成打印。 (4).设计并测试一个研究生类PostGraduateStudent。(1)数据成员包括ID(学号)、name(姓名)以及3门课程math、programming、english;(2)定义comSum()、comAvg()、comMax()计算3门课程的总分、平均分和最高分。对每一行语句加上注释。在报告中附上程序截图、运行结果截图和简要的文字说明。(20分) 程序截图: 运行结果截图: 首先导入java.util包中的Scanner类,用来接收用户输入。然后定义一个名为PostGraduteStudent的类,定义数据成员,并定义一个方法设置数据,再分别定义三个方法来算三门课程之和、平均值、最大值 接着在 main中声明一个PostGraduteStudent类型的变量p1并创建一个PostGraduteStudent对象,用 p1引用它。利用Scanner接收用户输入的信息, 调用方法,将信息传入,完成设置。 最后分别调用p1对象的comSum comAvg comMax方法,并分别赋值给对应变量。完成打印。 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 其他(例如感想、建议等等)。 |

相关推荐
passerby60614 分钟前
完成前端时间处理的另一块版图
前端·github·web components
掘了11 分钟前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅14 分钟前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅35 分钟前
5分钟快速搭建 AI 平台并用它赚钱!
前端
爬山算法1 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7251 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai
猫头虎1 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
李少兄1 小时前
在 IntelliJ IDEA 中修改 Git 远程仓库地址
java·git·intellij-idea
崔庆才丨静觅1 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment1 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端