北京电子科技学院(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. java日期和时间Date、Calendar、SimpleDateFormat

    1       时间和日期 1.1      日期类Date和格式化SimpleDateFormat 日期使用过程中需要将日期Date对象转化为字符串,或者将字符串形式的日期转化为日期Date对象.可 ...

  2. Shopping List

    剃须啫喱 吉列 70g $22.00 鲁阳家居专营店 剃须水套装 阿帕奇+酷曼 230g+230g $16.80(限时活动) 鲁阳家居专营店 鸡胸肉 撸铁党 100gx9+100g $49.9(限时活 ...

  3. Springboot项目启动后访问不到Controller

    1.搭建一个简单的Springboot项目,最开始将启动类main函数与controller放到一个类里,可以正常启动和访问,但是将两个分开再启动时访问就会报错:This application ha ...

  4. 自动生成CHANGELOG.md

    $ npm install -g conventional-changelog-cli $ cd my-project $ conventional-changelog -p angular -i C ...

  5. flutter -------- GridView的使用

    使用GridView将widget放置为二维列表. GridView提供了两个预制list,或者您可以构建自定义网格.当GridView检测到其内容太长而不适合渲染框时,它会自动滚动. GridVie ...

  6. Shovel Sale CodeForces - 899D (数位dp)

    大意: n把铲子, 价格1,2,3,...n, 求有多少个二元组(x,y), 满足x+y末尾数字9的个数最多. 枚举最高位, 转化为从[1,n]中选出多少个二元组和为$x$, 枚举较小的数 若$n\g ...

  7. 【js】【图片瀑布流】js瀑布流显示图片20180315

    js实现把图片用瀑布流显示,只需要“jquery-1.11.2.min.js”. js: //瀑布流显示图片 var WaterfallImg = { option: { maxWidth: 850, ...

  8. Java中BigDecimal的舍入模式

    java.math.BigDecimal 不可变的.任意精度的有符号十进制数.BigDecimal 由任意精度的整数非标度值和32位的整数标度(scale)组成. 如果为零或正数,则标度是小数点后的位 ...

  9. 随手记-egg入门

    egg 入门 https://eggjs.org/zh-cn/intro/quickstart.html 1.建立项目目录2.  npm i egg --save   && npm i ...

  10. express应用程序生成器

    1.express 是node.js的后端开发框架,angular是node.js 的前端开发框架 2.express 的三个核心概念:路由.中间件.模板引擎 一.安装express应用服务程序生成器 ...