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

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

一、实验内容及步骤

(一)单元测试

主要学习安装和使用junit来测试编写的程序,并学习以TDD(Test Driven Devlopment,测试驱动开发)方式来编写程序。

(二)面向对象三要素

  • 要求:使用StarUML对实验二中的代码进行建模,发类图的截图,加上学号水印。

(三)设计模式初步

  • 要求:对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式。让系统支持Double类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印。

二、实验练习:使用TDD的方式设计关实现复数类Complex

产品代码:

public class Complex{
    private double r;
    private double i;

    public Complex(double r, double i) {
        this.r = r;
        this.i = i;
    }

    public static double getRealPart(double r) {
        return r;
    }

    public static double getImagePart(double i) {
        return i;
    }

    public Complex Add(Complex c) {
        return new Complex(r + c.r, i + c.i);
    }
    public Complex Sub(Complex c) {
        return new Complex(r - c.r, i - c.i);
    }
    public Complex Multi(Complex c) {
        return new Complex(r * c.r - i * c.i, r * c.i + i * c.r);
    }
    public Complex Div(Complex c) {
        return new Complex((r * c.i + i * c.r)/(c.i * c.i + c.r * c.r), (i * c.i + r * c.r)/(c.i * c.i + c.r * c.r));
    }

    public String toString() {
        String s = " ";
        if (i > 0)
            s =  r + "+" + i + "i";
        if (i == 0)
            s =  r + "";
        if (i < 0)
            s = r + " " + i + "i";
        return s;
    }
}

测试代码:

三、总结与分析

(一)遇到的问题及解决方案:

  • 问题一:在file里找不到settings:
  • 解决方案:在蓝墨云提问后,郝博雅同学给了我一个解决的方法,在开始页面的configure设置里找到了plugins,再选其中的browse,就能设置了。
  • 问题二:在starUML里无法向windows系统下对java进行逆向工程,但在下载java插件中就可以了。

(二)PSP

| 步骤 |耗时 | 百分比)|
| -------- | :----------------😐:----------------😐:---------------: |:-----😐
| 需求分析 | 10min | 11.11% |
| 设计 | 15min | 16.66% |
| 代码实现 | 40min | 44.44% |
| 测试 | 5min | 5.55% |
| 分析总结 | 20min | 22.22% |

posted @ 2017-04-23 16:49  徐志瀚  阅读(636)  评论(0编辑  收藏  举报