Java第二次实验20135204
一、实验过程:
1.先创建一个学号命名的文档:

2.一个百分制成绩转化为等级:


3.新建一个包,另一个测试:

4.打开UML,建模软件umbrello进行建模:


相关程序:




5.我的保存:

二、遇到的问题以及解决方法:
这次的实验总体上比较顺利,就是自己边做边想花费了很多的时间。但还是遇到了一些小问题。
比如说:实验指导上对于UML建模由Cat和Dog变为Animal包括Cat和Dog的模型图这一部分的变化讲的不是很详细,
所以我已开始不会做。但是后来明白Animal 也是需要自己新建立的,所以后来彻底明白了这个实验中UML的用法。
也会自己画连接线。
三、PSP时间统计:
步骤 耗时百分比
需求分析 40%
设计 20%
代码实现 10%
测试 10%
分析总结 20%
四、使用TDD的方法设计并实现复数类Complex
1.产品代码:
public class Complex {
//实部realpart,虚部imaginPart
private double realPart;
private double imaginPart;
//复数类Complex()构造函数,将实部虚部都置为0
public Complex(){
this.realPart = 0;
this.imaginPart = 0;
}
//Complex(double r,double i)创建复数对象的同时完成复数的实部,虚部的初始化
public Complex(double r,double i){
this.realPart = r;
this.imaginPart = i;
}
//getRealPart()获取实部
public double getRealPart(){
return realPart;
}
//getImaginaryPart()获取虚部
public double getImaginaryPart(){
return imaginPart;
}
//setRealPart(double d)设置实部
public void setRealPart(double d){
this.realPart = d;
}
//setImaginaryPart(double d)设置虚部
public void setImaginaryPart(double d){
this.imaginPart = d;
}
//add(Complex c)复数相加
public void add(Complex c1,Complex c2){
Complex c = new Complex(c1.realPart+c2.realPart,c1.imaginPart+c2.imaginPart);
print(c);
}
//minus(Complex c)复数相减
public void minus(Complex c1,Complex c2){
Complex c = new Complex(c1.realPart-c2.realPart,c1.imaginPart-c2.imaginPart);
print(c);
}
//ComplexMulti(Complex c)复数相乘
public void ComplexMulti(Complex c1,Complex c2){
Complex c = new Complex(c1.realPart*c2.realPart-c1.imaginPart*c2.imaginPart,c1.realPart*c2.imaginPart+c1.imaginPart*c2.realPart);
print(c);
}
//toString()把当前复数对象的实部,虚部组合成a+bi的字符串形式
public void print(Complex c){
double a = c.realPart;
double b = c.imaginPart;
System.out.println(a+"+"+b+"i");
}
}
2.测试代码:
import org.junit.Test;
import junit.framework.TestCase;
public class ComplexTest extends Complex {
@Test
public void printTest(){
Complex c1 = new Complex(3.5,9);
Complex c2 = new Complex(9,23);
Complex c = new Complex();
c.ComplexMulti(c1, c2);
c.add(c1, c2);
c.minus(c1, c2);
}
}
五、体会
这次的实验并不难,但是内容很多,要看的东西也有很多。而且有了除Java编程之外,另外的东西,
例如UML建模软件。而且每次实验的感觉都是可以接触到很多新的东西,对我很有提高。
Java第二次实验20135204的更多相关文章
- 南京邮电大学java第二次实验报告
实 验 报 告 ( 2017 / 2018学年 第2学期) 课程名称 JAVA语言程序设计 实验名称 Java集成开发环境的安装与使用. Java变量.表达式与控制结构 实验时间 2018 年 4 月 ...
- java第二次实验报告
课程:Java实验 班级:201352 姓名:池彬宁 学号:20135212 成绩: 指导教师:娄佳鹏 实验日期:15.05.05 实验密级: ...
- Java 第二次实验20145104 张家明
实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验步骤 (一)单元测试 ...
- Java第二次实验报告——Java面向对象程序设计
北京电子科技学院(BESTI) 实 验 报 告 课程名称:java程序设计实验 班级:1352 姓名:洪韶武 学号:20135219 成绩: ...
- java第二次实验
1. 本章学习总结 答:学会在java中使用函数调用. 学会在Java程序中使用函数,使程序层次更清晰. 使用StringBuilder代替string拼接,减少内存空间的占用. 使用BigDecim ...
- java第二次实验报告20135231
Java实验报告二:Java面向对象程序设计 20135231 何佳 实验要求: 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉 ...
- 20165210 Java第二次实验报告
20165210 实验二 Java面向对象程序设计 一.面向对象程序设计1--单元测试和TDD 实验要求 参考 http://www.cnblogs.com/rocedu/p/6371315.html ...
- 20145330《Java程序设计》第二次实验报告
20145330<Java程序设计>第二次实验报告 实验二 Java面向对象程序设计 实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承多态 3.初步掌握UM ...
- 20145320《Java程序设计》第二次实验报告
20145320<Java程序设计>第二次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.12 15: ...
随机推荐
- Servlet基础笔记
一.什么Servlet? servlet 是运行在 Web 服务器中的小型 Java 程序(即:服务器端的小应用程序).servlet 通常通过 HTTP(超文本传输协议)接收和响应来自 Web 客户 ...
- 更新Android Studio 3.1.1碰到的问题
碰到了如下问题 The SourceSet 'instrumentTest' is not recognized by the Android Gradle Plugin. Perhaps you m ...
- 复制web项目时注意修改web项目名
改web项目的项目名可以右击->properties->搜索web找到settings->修改context name
- Android远程擦除漏洞
漏洞原理: 安卓浏览器内核有这样一个机制,当网页内嵌入了一个特定格式的字符串,就可以被识别为一个电话号码通过点击该字符串的方式拨打电话.但是没有对*#06#等具有特殊功能的拨号组合进行限制,由于很多厂 ...
- Entity Framework 多对多查询的写法
同学们,看下面的代码段就明白了: 一对多: public ICollection<ReportLookup> GetReportLookup(IEnumerable<Guid> ...
- 5469: [FJOI2018]领导集团问题
5469: [FJOI2018]领导集团问题 链接 题意: 要求在一棵树内选一个子集,满足子集内的任意两个点u,v,如果u是v的祖先,那么u的权值小于等于v. 分析: dp[u][i]表示在u的子树内 ...
- P4198 楼房重建
P4198 楼房重建 集中写博客= = 首先把高度变成斜率 然后就比较玄学了,首先用线段树维护一个区间的斜率最大值,和只看这个区间时能看见的楼房个数ans 然后更新时先更新max,再处理神奇的ans ...
- P4360 [CEOI2004]锯木厂选址
P4360 [CEOI2004]锯木厂选址 这™连dp都不是 \(f_i\)表示第二个锯木厂设在\(i\)的最小代价 枚举1号锯木厂 \(f_i=min_{0<=j<i}(\sum_{i= ...
- Spring 单元测试 RequestContextHolder.getRequestAttributes()).getRequest(); 为空的原因
原因是因为单元测试时没有加载 web.xml 中的: <!-- spring在service层获取session和request需要创建的监听器 --> <listener> ...
- 安装QConf 报错及解决方案
1:提示找不到gdbm.h头文件 /alidata/QConf/agent/qconf_dump.cc:1:18: fatal error: gdbm.h: No such file or direc ...