• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

开发技术 开发技术 4小时前 1次浏览

# 20202320  2021-2022-1 《数据结构与面向对象程序设计》实验二报告

课程:《程序设计与数据结构》
班级: 2023
姓名: 陈欢
学号:20202320
实验教师:王志强老师
实验日期:2021年9月30日
必修/选修: 必修

## 1.实验内容

下载安装并使用IDEA,完成下面实验(https://www.cnblogs.com/rocedu/p/6371315.html)。

1. 初步掌握单元测试和TDD
2. 理解并掌握面向对象三要素:封装、继承、多态
3. 初步掌握UML建模
4. 完成蓝墨云上 (1)-(5)实验。

## 2. 实验过程及结果

(1)初步掌握单元测试和TDD

      a.单元测试

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

   b.TDD

 

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 

 

 

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

(2)理解和掌握封装、继承、多态

  a.封装:封装,即隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别;将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体,也就是将数据与操作数据的源代码进行有机的结合,形成“类”,其中数据和函数都是类的成员。

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

  b.继承:是从现有类派生新类的过程。

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

  c.多态:多种形态,使用父类的对象指向子类的对象,调用子类的方法。

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 

(3)初步掌握UML建模

 20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

(4)完成蓝墨云上 (1)-(5)实验。

a.参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST 
参考http://www.cnblogs.com/rocedu/p/6736847.html

提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号。

 20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 b.参考 积极主动敲代码,使用JUnit学习Java (http://www.cnblogs.com/rocedu/p/4837092.html)

    参考http://www.cnblogs.com/rocedu/p/6736847.html

以 TDD的方式研究学习StringBuffer,提交你的单元测试用例和测试通过的截图,截图要加上学号水印。

 20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

  c.

实验三 Java面向对象程序设计(http://www.cnblogs.com/rocedu/p/4472842.html)

参考http://www.cnblogs.com/rocedu/p/6736847.html

对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式
用自己的学号%6进行取余运算,根据结果进行代码扩充:
0:让系统支持Byte类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
1:让系统支持Short类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
2:让系统支持Boolean类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
3:让系统支持Long类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
4:让系统支持Float类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
5:让系统支持Double类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

 20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 d.任务:以TDD的方式开发一个复数类Complex,要求如下:

  // 定义属性并生成getter,setter

double RealPart;
double ImagePart;

 20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 e.对实验二中的代码进行建模,发类图的截图,加上学号水印。

类图中只少两个类。

20202320 2021-2022-1 实验三《面向对象程序设计》实验报告

 

## 3. 实验过程中遇到的问题和解决过程
– 问题1:使用TDD时,无法将复数返回值与复数期望值进行比较。
– 问题1解决方案:将复数返回值的实部和虚部与期望值进行比较

-问题2:没有弄明白什么是封装。

-问题2解决方案:Java 封装 | 菜鸟教程 (runoob.com)

 

## 参考资料
–  [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/)

–  [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
–  本地项目上传到码云(gitee)远程仓库(图文详解) – 星空流年 – 博客园 (cnblogs.com)


喜欢 (0)