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: ...
随机推荐
- jsonp封装方法二
前言: 看到玉伯的聊聊jsonp的p,引发了另一种loader方式来跨域的方法,他把它叫做JSONM协议,原理和seajs相似,都是动态加载script,加载完成后执行callback, 同时还不用考 ...
- day 85 Vue学习之vue-cli脚手架下载安装及配置
1. 先下载node.js,下载地址:https://nodejs.org/en/download/ 找个目录保存,解压下载的文件,然后配置环境变量,将下面的路径配置到环境变量中. 由于 Node ...
- [转]Docker 生产环境之配置容器 - 限制容器资源
默认情况下,容器没有资源限制,可以使用主机内核调度程序允许的给定资源.Docker 提供了一些方法来控制容器可以使用多少内存.CPU 或块 IO,并设置 docker run 命令的运行时配置标志.本 ...
- 第五周 加分题-mybash的实现
第五周 加分题-mybash的实现 使用fork,exec,wait实现mybash 产品代码 #include <stdio.h> #include <stdlib.h> # ...
- ubuntu 装 mysql
sudo apt-get install mysql-server mysql-client
- Deep Learning 资料总结
http://colah.github.io/posts/2014-03-NN-Manifolds-Topology/ : 理解神经网络 ELU:
- setInterval只执行一次的原因
setInterval(arrow(),) 改为: setInterval(arrow,) 原因: arrow()这是一个函数调用,函数调用就会有返回值, 而arrow()没有返回值,所以这里的arr ...
- Tomcat部署Web应用
在Tomcat中部署Web有三种方法: 1,可以将Web应用文件直接复制到webapps目录下,也可以将Web应用打成war包放到webapps目录下,tomcat会自动解开war包,并在webapp ...
- 从《乱世王者》看腾讯SLG手游如何搭建完整安全服务
WeTest 导读 <乱世王者>是由腾讯旗下天美工作室群自主研发的一款战争策略手游,在经历了2015年-2017年的SLG品类手游的爆发之势下,于2017年11月21日正式公测. < ...
- .net 分布式学习计划
一: 1:.net分布式系统架构的思路 https://blog.csdn.net/slowlifes/article/details/53162014 2: nginx+iis实现负载均衡 ...