北京电子科技学院(BESTI)实验报告

课程:Java2实用教程 班级:201752 姓名:姚明宇 学号:20175223
成绩: 指导教师:娄嘉鹏 实验日期:4月19日
实验密级: 预习程度: 实验时间:
仪器组次: 必修/选修:选修 实验序号:

目录

实验名称:实验二 面向对象程序设计

实验仪器:

名称 型号 数量
PC端 1

实验内容、步骤与体会:


一、实验二 面向对象程序设计-1

参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST

参考http://www.cnblogs.com/rocedu/p/6736847.html

提交最后三个测试用例都通过的截图,截图上要有画图加水印,输入自己的学号。


二、实验二 面向对象程序设计-2

参考 积极主动敲代码,使用JUnit学习Java (http://www.cnblogs.com/rocedu/p/4837092.html)

参考http://www.cnblogs.com/rocedu/p/6736847.html

以 TDD的方式研究学习StringBuffer,提交你的单元测试用例和测试通过的截图,截图要加上学号水印。


三、实验二 面向对象程序设计-3

实验二 Java面向对象程序设计(http://www.cnblogs.com/rocedu/p/4472842.html)

参考http://www.cnblogs.com/rocedu/p/6736847.html

对设计模式示例进行扩充,体会OCP原则和DIP原则的应用,初步理解设计模式

用自己的学号%6进行取余运算,根据结果进行代码扩充:

4: 让系统支持Float类,并在MyDoc类中添加测试代码表明添加正确,提交测试代码和运行结的截图,加上学号水印(学号为20175223,23%6=5;任务为0~5六个任务中的4)


四、实验二 面向对象程序设计-4

提交:单元测试代码和运行成功截图及码云上代码链接,截图要加上学号水印

参考http://www.cnblogs.com/rocedu/p/6736847.html

任务:以TDD的方式开发一个复数类Complex,要求如下:

定义属性并生成getter,setter 定义构造函数 Override Object 定义公有方法:加减乘除
double RealPart; public Complex() public boolean equals(Object obj) Complex ComplexAdd(Complex a)
double ImagePart; public Complex(double R,double I) public String toString() Complex ComplexSub(Complex a)
Complex ComplexMulti(Complex a)
Complex ComplexDiv(Complex a)


五、实验二 面向对象程序设计-5

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

参考http://www.cnblogs.com/rocedu/p/6736847.html

类图中只少两个类。


六、代码链接

码云仓库:YogileOne https://gitee.com/Yogile/YogileOne.git

在 2018-2019-第2学期\Java 程序设计基础 文件夹中。

码云网页链接:javaexam2


实验过程中遇到的问题以及解决方案

1. 问题:junit 无法使用。

解决方案:

鼠标选中 TestCase ,点击红色灯泡,选择 Create class TestCase ,在窗口中点击 OK 即可。



2. 问题:单元测试中,测试方法时报错。

@Test
public void TestcomplexAdd() throws Exception {
test0.complexAdd(test1,test2);
assertEquals("11.0+ 11.0i",test0.toString());
test0.complexAdd(test3,test4);
assertEquals("-50.0+ -50.0i",test0.toString());
}

报错如下

C:\Java\jdk1.8.0_102\bin\java.exe...

java.lang.Exception: No tests found matching Method TestcomplexAdd(ComplexTest) from org.junit.internal.requests.ClassRequest@4edde6e5

	at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:40) <4 internal calls>

Process finished with exit code -1

解决方案:

单元测试中,测试方法时,方法名必须为 小写开头

    public void testcomplexAdd() throws Exception {

3. 注意:

  • (1) 单元测试中,测试方法时,方法前必须有 @Test
  • (2) 要熟练使用 java.unit.Assert 中的方法:assertEquals 等。

体会

单元测试可以通过更简单地方式更方便地进行代码测试,效率极大地提高。


PSP

步骤 耗时 百分比
需求分析 5min 5%
设计 10min 10%
代码实现 35min 35%
测试 40min 40%
分析总结 10min 10%

2018-2019-2 学号20175223 实验二《Java面向对象程序设计》实验报告的更多相关文章

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

    实验二 Java面向对象程序设计 实验概述: 课程:程序设计与数据结构 班级:1623班 姓名: 邢天岳 学号:2309 指导老师:娄老师 王老师 实验日期:2017.4.16 实验名称: Java面 ...

  2. 实验二 Java面向对象程序设计实验报告

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

  3. 20155217 实验二 Java面向对象程序设计 实验报告

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

  4. 20162305 实验二 Java面向对象程序设计 实验报告

    20162305 实验二 Java面向对象程序设计 实验报告 实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.熟悉S.O.L.I.D ...

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

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

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

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

  7. 20145308刘昊阳 《Java程序设计》实验二 Java面向对象程序设计 实验报告

    20145308刘昊阳 <Java程序设计>实验二 Java面向对象程序设计 实验报告 实验名称 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面相对象三要素:封 ...

  8. 20162311 实验二 Java面向对象程序设计 实验报告

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

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

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

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

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

随机推荐

  1. 简单理解epel源

    EPEL源-是什么全称   EPEL源   EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适 ...

  2. 第二章 python变量及文件

    1.环境变量 1.配置环境变量不是必须的2.配置环境变量的目的:为终端提供执行环境 2.Python代码执行 1.交互式       -- 控制台直接编写运行Python代码       -- 1.打 ...

  3. java动态代理实现与原理详细分析(代码层面解释了AOP的实现)

    关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理. 一.代理模式    代理模式是常用的java设计模式, ...

  4. 【Code Tools】Java微基准测试工具JMH之中级篇

    一.JMH中的基本概念 1)Mode Mode 表示 JMH 进行 Benchmark 时所使用的模式.通常是测量的维度不同,或是测量的方式不同.目前 JMH 共有四种模式: 1.Throughput ...

  5. python内置函数详细描述与实例演示

    python有许多内置函数,列出表格如下 内置函数 abs() delattr() hash() memoryview() set() all() dict() help() min() setatt ...

  6. 处女座与复读机 DP

    题目链接:https://ac.nowcoder.com/acm/contest/327/G 题意:给你两个字符串序列,让你根据第二个序列判断是不是 复读机,复读机会有以下特征 1.       将任 ...

  7. 关于window.localtion的用法几点总结

    参考链接: http://blog.csdn.net/cui_angel/article/details/7957274(1)window.location.pathname设置或获取对象指定的文件名 ...

  8. java 动态增/减集合元素

    1. 简介 有时候需要在集合遍历过程中进行增/删,下面介绍几种正确的操作方式. 2. 示例 例如有如下集合[1, 2, 2, 3, 5],需要删除被2整除的元素. import java.util.* ...

  9. mac版mysql配置

    开始下载 我选择的是最后一个dmg格式的安装包,点击download,会出现让我们注册登陆的界面,点击最下面的No thanks,just take me to downloads!直接进行下载即可: ...

  10. 简易OA漫谈之工作流设计(四,怎么支持会签)

    会签:就是一个步骤要所有人都审批完成才能完成. 上一步提交到会签步骤时,该步骤的每个人都能收到一条待办任务, 会签审批人每次提交时都检查该步骤所有会签人是否已经审批,如果全部审批就产生下一手任务. 演 ...