Java语言程序设计A实验1:类与对象.doc

Java语言程序设计A实验1:类与对象.doc

ID:60778690

大小:225.00 KB

页数:21页

时间:2020-12-18

Java语言程序设计A实验1:类与对象.doc_第1页
Java语言程序设计A实验1:类与对象.doc_第2页
Java语言程序设计A实验1:类与对象.doc_第3页
Java语言程序设计A实验1:类与对象.doc_第4页
Java语言程序设计A实验1:类与对象.doc_第5页
资源描述:

《Java语言程序设计A实验1:类与对象.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验课程名称:Java语言程序设计A实验项目名称实验1:类与对象实验成绩实验者专业班级组别同组者无开始日期第一部分:实验预习报告(包括实验目的及意义,实验基本原理与方法,主要仪器设备及耗材,实验内容及要求,实验方案与技术路线等)一.实验目的及意义1.根据实际需求,使用UML类图,合理设计类及其成员(实例变量、方法)。2.编写、调用构造函数,初始化新建对象。3.编写、调用方法,完成相关操作。4.实现信息隐藏与封装。5.创建对象、调用对象方法。6.正确使用对象数组。7.设计、实现算法逻辑。二.实验基本原理与方法1.面向对象的概念、思想、思维方式。2.UML面向对象设计初步。2.类的概念

2、、结构、定义、使用。3.构造函数的概念、结构、定义、调用。4.方法的概念、结构、定义、调用。5.信息隐藏与封装的概念、实现。6.对象的概念、创建、使用。7.对象数组的概念、使用。8.控制流程。三.主要仪器设备及耗材1.PC及其兼容机。2.计算机操作系统。3.程序编辑器EditPlus。4.Java开发工具JDK。四.实验内容及要求实验1-1:请设计一个类Student,该类的实例变量有学号studentNumber、姓名studentName、专业specialty、学费tuition。学费tuition要实现封装,最低学费4500元。请绘制完整的UML类图,写出类Student的

3、Java源代码。然后,编写测试类StudentTest,给出运行结果。实验1-2:编写类Book,其实例变量简化为:bookNamenumRated5numRated4numRated3numRated2numRated1方法addRating()应保证能接收一个有效整数作为形参,将与形参匹配的评级人数加1。例如,如果接收3,则numRated3加1。方法getAverage(),返回所有评级的平均值。编写测试类BookReviewTest,在main()方法中,创建一个Book对象,为这本图书评级6次,最后输出这本图书的书名、平均评级。程序的一种可能的输出结果:HeadFirst

4、Java,AverageRating:4.2实验1-2(数组版本):重做实验1-2,使用数组代替变量保存图书评级,所有修改只应局限于类Book内部,测试类BookReviewTest无需修改。实验1-3(选做):编写储蓄账户类及测试类,模拟存款,参考以下运行方式:(1)新开5个储蓄账户,各储蓄账户的编号、户名在新开储蓄账户时初始化,假设每位用户新开储蓄账户时都存入了一笔钱。(2)提示用户从键盘输入储蓄账户编号。(3)若输入的储蓄账户编号与新开的5个储蓄账户编号之一匹配,则提示用户从键盘输入存款金额,存款金额必须大于0,否则显示错误提示,直到用户输入的存款金额大于0为止。(4)相应储

5、蓄账户的余额被更新。(5)存款完成后,提示存款成功,显示该储蓄账户的编号、户名、余额。(6)若输入的储蓄账户编号与新开的5个储蓄账户编号均无法匹配,显示错误提示,并询问是否还要继续存款。(7)用户输入yes,继续执行步骤(2),否则显示退出信息。最基本要求:绘制UML类图;储蓄账户的余额必须确保大于等于0。五.实验方案及技术路线(设计思路、UML类图、算法、注意事项)1)对于实验1-1,可以对studentNumber,studentName,specialty,tuition四个变量都进行封装,使用private关键字,然后在类中使用get和set方法,实现对这些实例变量的获取和

6、更改。在setTuition()方法中,首先通过if语句对传入的参数进行判断,若数值大于或等于4500,则修改成功,否则输出错误提示,简略的UML图如下:2)对于实验1-2中,各个星级人数的统计通过switch(){case}语句即可实现,但要注意的是,最好加上default语句用以处理错误输入的情况。数组版本只需要将numRated5、numRated4、numRated3、numRated2、numRated1这几个变量放入一个int[]数组中即可。3)实验1-3中,因为考虑到各个储蓄账号不能重复,并且在每次操作的时候需要进行匹配,若每次都通过for()循环遍历则比较繁琐,操作

7、时间长,说以采用HashMap集合存储账号,账号number为关键字,每个Account对象为值,因为在测试类中会使用到containsKey()等方法,所以在Account类中需要重写toString()、equal()以及hashCode()方法。简略的UML图如下:第二部分:实验过程记录(可加页)(代码、运行结果、实验中出现的问题及解决过程)n实验1-1程序代码如下:1)Student类代码:publicclassStudent{privateStringstu

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。