20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三

20192309 2020-2021-1 《数据结构与面向对象程序设计》实验三报告

课程:《程序设计与数据结构》
班级: 1923
姓名: 金一非
学号:20192309
实验教师:王志强
实验日期:2020年10月12日
必修/选修: 必修

1.实验内容

下载安装并使用IDEA,完成下面实验(https://www.cnblogs.com/rocedu/p/6371315.html)
初步掌握单元测试和TDD
理解并掌握面向对象三要素:封装、继承、多态
初步掌握UML建模
完成蓝墨云上 (1)-(5)实验。

2. 实验过程及结果

2.1第一个提交点

参考 http://www.cnblogs.com/rocedu/p/6371315.html
http://www.cnblogs.com/rocedu/p/6736847.html
简单对junit的调试的学习,利用一个十进制转化为二进制的简单小程序来检验自己的学习成果
代码截图如下:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三
码云链接:https://gitee.com/besti1923/java
接着对这个程序写一个测试程序:
测试程序以及运行结果如下:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三
码云链接:https://gitee.com/besti1923/java

2.2第二个提交点

参考 积极主动敲代码,使用JUnit学习Java (http://www.cnblogs.com/rocedu/p/4837092.html)
http://www.cnblogs.com/rocedu/p/6736847.html
以TDD的方式研究学习StringBuffer,提交单元测试用例和测试通过的截图。
认识了解了charAt()、capacity()、indexOf()方法,同时也比较了capacity()与length()两个方法的区别,以及对junit测试代码的编写有了更加深入的认识
程序代码:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三
测试代码如下:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三

2.3第三个提交点

Java面向对象程序设计(http://www.cnblogs.com/rocedu/p/4472842.html)
http://www.cnblogs.com/rocedu/p/6736847.html
对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式
学号9%6取余为3:
让系统支持Long类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印
程序代码以及运行结果:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三

2.4第四个提交点

提交:单元测试代码和运行成功截图及码云上代码链接。
参考 http://www.cnblogs.com/rocedu/p/6736847.html
任务:以TDD的方式开发一个复数类Complex,要求如下:
// 定义属性并生成getter,setter
double RealPart;
double ImagePart;
// 定义构造函数
public Complex()
public Complex(double R,double I)

//Override Object
public boolean equals(Object obj)
public String toString()

// 定义公有方法:加减乘除
Complex ComplexAdd(Complex a)
Complex ComplexSub(Complex a)
Complex ComplexMulti(Complex a)
Complex ComplexDiv(Complex a)
程序代码如下:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三
测试代码以及运行结果如下:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三

2.5第五个提交点

使用WhiteStarUML对实验二中计算器的代码进行建模,发类图的截图。
参考:http://www.cnblogs.com/rocedu/p/6736847.html
类图中至少两个类。
结果如下:
20192309 2020-2021-1 《数据结构与面向对象程序设计》 实验三

3. 实验过程中遇到的问题和解决过程

-问题1:junit不能正常使用
-解答:通过导入库来解决

其他(感悟、思考等):

加深了自己对数据结构的理解与Java程序编写的实践能力

参考资料

-CSDN

上一篇:C++高级语言程序设计实验七-中国矿业大学


下一篇:Python3 tkinter基础 Entry insert delete 点击按钮 向输入框赋值 或 清空