zoukankan      html  css  js  c++  java
  • 2018-2019-2-20175323 java实验二《Java面向对象程序设计》

    单元测试

    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(除法)时除法结果的分母c2+d2没有括号

    添加后不再报错

    使用UML图对程序进行建模

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

    得到第五个提交点

    实验心得

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

  • 相关阅读:
    python模块之__future__模块
    SQL之分组排序取top n
    SQL之层次查询
    win server 2008添加磁盘-脱机转换为联机状态方法
    拉链表-增量更新方法一
    一道hive SQL面试题
    一道与时间差有关的SQL面试题
    (转)linux中nmcli命令的使用及网络配置
    (转)内核模块操作命令-lsmod+rmmod+modinfo+modprobe
    (转)Linux 系统设置 : dmesg 命令详解
  • 原文地址:https://www.cnblogs.com/ruirui56/p/10732292.html
Copyright © 2011-2022 走看看