单元测试

1.在IDEA中新建项目并输入单元测试的代码

2.在IDEA中下载Junit,我发现Junit已经存在了

3.新建test文件

遇到的问题

发现Junit红字解析不了

解决办法:查找到junit.jar文件的位置之后加入project structure

问题解决

得到第一个提交点

以TDD的方式研究StringBuffer

1.按照相关要求输入了StringBuffer类

2.按照StringBufferDemo中调用的方法,修改test类

得到第二个提交点


遇到的问题

输入代码时assertEquals方法报错cannot resolve method

百度后说是没有引入tomcat的lib,但是我发现没有找到所说的tomcat的lib,得知需要下载再配置

放弃之后用第二种方法:清空缓存


但是也没有解决这个问题,最后查了手册,发现是没有引入包:import static org.junit.Assert.*;添加后不再报错

对设计模式示例进行扩充,让系统支持Double类

我的题目是让系统支持Double类,并在MyDoc类中添加测试代码。
在学习了OCP和DIP原则后,结合实例我懂得了设计工厂模式,抽象类Data有多个子类控制不同的数据类型输入,抽象类Factory的子类则负责返回不同数据类型的构造方法,子类对父类进行重写和继承,Document用Data生成对象以便调用Data中不同的数据类型,最终在主类中实现不同数据类型的输出,要支持Double类,就应该增加Data类的子类Double,再增加Factory类的子类DoubleFactory,以及在主类中增加输出的代码。

得到第三个提交点


运行结果正确

以TDD的方式开发复数类

1.题目包含的方法包括两个构造方法complex、四个加减乘除的方法、以及重写的两个方法:输出复数的方法toString以及判断是否与另一个复数相等的方法Equals。先用TDD写出test类再根据Complextest要求写出Complex。

2.根据ComplexTest要求的方法写出Complex具体内容


3.运行ComplexTest对代码进行测试

得到第四个提交点


发现测试通过,代码无误

遇到的问题

1.不会复数的除法,查公式得:

2.test中对除法的测试报错

发现是我在写ComplexDiv(除法)时除法结果的分母c^2+d^2没有括号

添加后不再报错

使用UML图对程序进行建模

参考的教程是https://blog.csdn.net/wokenshin/article/details/42592765
对实验2-3中的MyDoc画UML图

得到第五个提交点

实验心得

如果慢慢学,这些软件都挺有意思的。

2018-2019-2-20175323 java实验二《Java面向对象程序设计》的更多相关文章

  1. 20155202 《Java程序设计》实验二(面向对象程序设计)实验报告

    20155202 <Java程序设计>实验二(面向对象程序设计)实验报告 代码托管 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉 ...

  2. 20165329 Java实验二:面向对象编程

    实验内容: 面向对象程序设计-1 实验要求: 提交最后三个JUnit测试用例(正常情况,错误情况,边界情况)都通过的截图 实验步骤: 1.按照老师博客的要求新建一个MyUtil项目 在src内新建ja ...

  3. 20155239《Java程序设计》实验二(面向对象程序设计)实验报告

    实验内容 初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.熟悉S.O.L.I.D原则 5.了解设计模式 实验步骤 单元测试 1.三种代码: 伪代码 ...

  4. 2017-2018-2 20165215 实验二 Java面向对象程序设计

    20165215 实验二 Java面向对象程序设计 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:张家佳 学号:20165215 指导教师:娄嘉鹏 实验日期:2018年4月16日 ...

  5. 20175314 实验二 Java面向对象程序设计

    20175314 实验二 Java面向对象程序设计 一.实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 二 ...

  6. 20165336 实验二 Java面向对象程序设计

    20165336 实验二 Java面向对象程序设计 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:康志强 学号:20165336 指导教师:娄嘉鹏 实验日期:2018年4月16日 ...

  7. 20165214 实验二 Java面向对象程序设计

    一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:朱文远 学号:20165214 指导教师:娄嘉鹏 实验日期:2018年4月16日 实验时间:13:45 - 15:25 实验序号:二 ...

  8. 20165308 实验二 Java面向对象程序设计

    20165308 实验二 Java面向对象程序设计 实验二 Java面向对象程序设计 一.实验报告封面 课程:Java程序设计 班级:1653班 姓名:张士洋 学号:20165308 指导教师:娄嘉鹏 ...

  9. 20165218 实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 课程:java程序设计 姓名:赵冰雨 学号:20165218 指导教师:娄嘉鹏 实验日期:2018.4.16 实验密级:Java开发环境的熟悉 实验内容.步骤与体会: ...

  10. 20165202 实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:贾海粟 学号:20165202 指导教师:娄嘉鹏 实验日期:2018年4月16日 实验时间:15:3 ...

随机推荐

  1. javaWEB 之文件的上传

    1.1 文件上传三要素 提供form表单,method必须是post form表单的enctype必须是multipart/form-data 提供 input type=“file” 类型输入 1. ...

  2. leetcood学习笔记-26-删除排序数组中的重复项

    题目描述: 第一次提交: class Solution: def removeDuplicates(self, nums) -> int: for i in range(len(nums)-1, ...

  3. 6374. 【NOIP2019模拟2019.10.04】结界[生与死的境界]

    题目 题目大意 给你一个数列,每次可以选择任意两个相邻的数\(x\)和\(y\),将其删去,并在原来位置插入\(x+2y\). 每次询问一个区间,对这个区间进行上述操作.求最后剩下的数最大是多少. 答 ...

  4. Work 4(通知类) (2019.04.25)

  5. Linux环境下安装PHP的memced扩展

    先下载libmemcached: wget  https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.t ...

  6. ES6 教程

    上次分享了es6开发环境的搭建,本次接着分享es6常用的特性. es6常用的语法参考   :    https://blog.csdn.net/itzhongzi/article/details/73 ...

  7. 让IE8兼容识别css3选择器——selectivizr-min.js

    html: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF ...

  8. linux下vim编辑器查找 关键字

    在  linux  vim 编辑器 下查找   关键字 方法[一] 1?short_open_tag : 它的意思是vim 打开文件的第一行 ? : 它的意思是反向查找 short_open_tag ...

  9. vs2012+wdk8.0 搭建wdf驱动开发环境

    开发环境搭建: 系统:win7 x64 工具:vs2012 + WDK8.0 插件:wdfcoinstaller.msi (1)先安装vs2012,再安装wdk8.0,这样在打开vs2012时可以创建 ...

  10. spark hive java.lang.NoSuchFieldError: HIVE_STATS_JDBC_TIMEOUT

    java.lang.NoSuchFieldError: HIVE_STATS_JDBC_TIMEOUT 这个问题我感觉是hive给spark挖的一个大坑.spark版本是2.4.4,hive是3 这个 ...