20155203 实验二《Java面向对象程序设计》实验报告

20155203 实验二《Java面向对象程序设计》实验报告

一、实验内容

  1. 参考http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST
    提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号。

  2. 参考 积极主动敲代码,使用JUnit学习Java
    以 TDD的方式研究学习StringBuffer,提交你的单元测试用例和测试通过的截图,截图要加上学号水印。

TDD(Test Driven Devlopment, 测试驱动开发)

TDD的一般步骤如下:

  • 明确当前要完成的功能,记录成一个测试列表
  • 快速完成编写针对此功能的测试用例
  • 测试代码编译不通过(没产品代码呢)
  • 编写产品代码
  • 测试通过
  • 对代码进行重构,并保证测试通过(重构下次实验练习)
  • 循环完成所有功能的开发

二、练习

  1. 让系统支持Long类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印

  1. 以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)

  1. 使用StarUML对实验二中的代码进行建模,发类图的截图,加上学号水印。
    类图中只少两个类。

三、实验中遇到的问题及解决方法

  • 问题一:点击类名称不能出现小灯泡设置test

  • 问题一解决方案:使用快捷键Ctrl+Enter会非常方便

  • 问题二:如何使用StarUML通过代码直接生成类图?

  • 问题二解决方法:参考staruml反向(逆向)Java工程通过代码生成类图

  • 问题三:在编写实验内容4的complex类equals()方法的代码时,用Object型的对象obj直接取其RealPart和ImagePart时出现错误,不能编译。

  • 问题三解决方法:
    Complex com = (Complex)obj进行强制类型转换,再使用getter方法获取对象的属性

四、实验体会和收获

这次实验使我综合的运用了一直以来所学习的只是解决问题,加深了对很多函数例如toString()的理解,拓展了对于很多函数的应用。通过下载了很多有效的软件大大提高了我的学习效率!

步骤 耗时 百分比
需求分析 5min 5%
设计 5min 5%
代码实现 20min 22%
测试 45min 46%
分析总结 20min 22%
posted @ 2017-04-22 11:27  20155203杜可欣  阅读(108)  评论(0编辑  收藏  举报