20145109竺文君、20145106石晟荣 java实验三
重构的概念:重构(Refactoring)就是通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。
首先由zwj在<git.oschina.net>中新建了一个组织,并将ssr拉入。

zwj将代码git push到本项目中

ssr再将其git clone到电脑中准备进行重构。
但是在提交的时候无法上传,解决问题的方法是将我设置为Developer。

解决问题之后:

我们发现当虚部为负的时候“+”仍然存在,故修改本段代码。在本段代码中加入了if语句来判断虚部的情况。修改后的代码如下图:

输入数据(含有负数、0)验证编译情况,问题解决,编译成功。

之后ssr准备将修改后的代码git上去,却出现了问题:

由于不需要Main这个类,就删除了。但是因为在本地删除导致push的时候出现一点问题。后来为了解决,直接在git.oschina.net上面把这个java删除了,并且重新更新到本地库。
zwj在修改代码时添加的除法运算如下:
public ComplexNumber ComplexDiv(ComplexNumber c) {
ComplexNumber p = new ComplexNumber(c.m_dRealPart, -c.m_dImaginPart);
double t = c.m_dRealPart*c.m_dRealPart + c.m_dImaginPart*c.m_dImaginPart;
p = p.ComplexMulti(this);
p = p.ComplexDiv(t);
return p;
}
public ComplexNumber ComplexDiv(double c) {
ComplexNumber p = new ComplexNumber();
p.m_dRealPart = this.m_dRealPart / c;
p.m_dImaginPart = this.m_dImaginPart / c;
return p;
}
关于除法功能,本来想是否需要解决除数为0的异常,后来查到double类型的可以除0

至此,代码重构基本完成。
20145109竺文君、20145106石晟荣 java实验三的更多相关文章
- 201871010113-贾荣娟 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告
项目 内容 课程班级博客链接 18级卓越班 这个作业要求链接 实验三-软件工程结对项目 这个课程学习目标 掌握软件开发流程,提高自身能力 这个作业在哪些方面帮助我实现了学习目标 本次实验让我对软件工程 ...
- Effective Java 第三版——56. 为所有已公开的API元素编写文档注释
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
- Java实验--关于简单字符串回文的递归判断实验
首先题目要求写的是递归的实验,一开始没注意要求,写了非递归的方法.浪费了一些时间,所谓吃一堑长一智.我学习到了以后看实验的时候要认真看实验中的要求,防止再看错. 以下是对此次的实验进行的分析: 1)递 ...
- 2018-2019-2 20175126谢文航 实验三《敏捷开发与XP实践》实验报告
一.实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年5月2日 实验时间:--- 实验序号:实验三 实验名称:敏捷开 ...
- JUC总览,来自汪文君整理
- 拯救你的文档 – 【DevOps敏捷开发动手实验】开源文档发布
今天上海的天气真是不错,风和日丽.再次来到微软上海紫竹研发中心,心情很是愉快,喜欢这里的大草坪,喜欢这里的工程气氛,更喜欢今天来陪我的小伙伴们. 这次动手实验培训与以往最大的不同就是采用了开源文档的方 ...
- 文档在线预览开源实现方案三:OpenOffice + PDFRenderer + js
之前的方案无法很好地解决异构平台及不同浏览器的兼容性问题,如方案一需要客户端浏览器支持flash而移动端浏览器无法支持这点,虽然移动端浏览器支持方案二,但是一些老版本的IE浏览器无法支持,例如IE8就 ...
- Effective Java 第三版——19. 如果使用继承则设计,并文档说明,否则不该使用
Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...
- Effective Java 第三版——74. 文档化每个方法抛出的所有异常
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
随机推荐
- CodeForces - 847B Preparing for Merge Sort 二分
http://codeforces.com/problemset/problem/847/B 题意:给你n个数(n<2e5)把它们分成若干组升序的子序列,一行输出一组.分的方法相当于不断找最长递 ...
- oel5.5安装mysql数据库初始化报错解决办法
[root@chavinking mysql]# scripts/mysql_install_db --user=mysqlInstalling MySQL system tables...2016- ...
- python面向对象高级:Mixin多重继承
继上一篇学习笔记:python面向对象的继承与多态,本篇就Mixin扩展类的方法写下学习笔记 Mixin Mixin编程是一种开发模式,是一种将多个类中的功能单元的进行组合的利用的方式,这听起来就像是 ...
- 设置自己的APP能打开文件(在其他应用中打开显示自己的应用)
http://blog.csdn.net/leewolf130/article/details/29568961 http://www.jianshu.com/p/9711c3daf4bb https ...
- 排序的本质是什么 冒泡排序 bubble sort
import random def getRandomNums(min=4, max=20): n = random.randint(min, max) arr = [random.randint(1 ...
- three levels of abstraction
DATABASESYSTEM CONCEPTS SIXTH EDITION Abraham Silberschatz Yale University Henry F. KorthLehigh Univ ...
- Effective Java 目录
<Effective Java>目录摘抄. 我知道这看起来很糟糕.当下,自己缺少实际操作,只能暂时摘抄下目录.随着,实践的增多,慢慢填充更多的示例. Chapter 2 Creating ...
- Closest Common Ancestors---poj1470(LCA+离线算法)
题目链接:http://poj.org/problem?id=1470 题意是给出一颗树,q个查询,每个查询都是求出u和v的LCA: 以下是寻找LCA的预处理过程: void LCA(u){ f ...
- Git 常用命令(转)
原文:http://www.cnblogs.com/1-2-3/archive/2010/07/18/git-commands.html add by zhj :图是用 思维导图 软件MindMapp ...
- kubernetes实战(十二):k8s使用helm持久化部署redmine集成openLDAP
1.基本概念 此次安装的有Jenkins.Gitlab.Redmine,我公司目前使用的是独立于k8s集群之外单独部署的Jenkins等服务,此文章会介绍三种服务基于k8s的部署方式,之后集成之前部署 ...