重构的概念:重构(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实验三的更多相关文章

  1. 201871010113-贾荣娟 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告

    项目 内容 课程班级博客链接 18级卓越班 这个作业要求链接 实验三-软件工程结对项目 这个课程学习目标 掌握软件开发流程,提高自身能力 这个作业在哪些方面帮助我实现了学习目标 本次实验让我对软件工程 ...

  2. Effective Java 第三版——56. 为所有已公开的API元素编写文档注释

    Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...

  3. Java实验--关于简单字符串回文的递归判断实验

    首先题目要求写的是递归的实验,一开始没注意要求,写了非递归的方法.浪费了一些时间,所谓吃一堑长一智.我学习到了以后看实验的时候要认真看实验中的要求,防止再看错. 以下是对此次的实验进行的分析: 1)递 ...

  4. 2018-2019-2 20175126谢文航 实验三《敏捷开发与XP实践》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年5月2日 实验时间:--- 实验序号:实验三 实验名称:敏捷开 ...

  5. JUC总览,来自汪文君整理

  6. 拯救你的文档 – 【DevOps敏捷开发动手实验】开源文档发布

    今天上海的天气真是不错,风和日丽.再次来到微软上海紫竹研发中心,心情很是愉快,喜欢这里的大草坪,喜欢这里的工程气氛,更喜欢今天来陪我的小伙伴们. 这次动手实验培训与以往最大的不同就是采用了开源文档的方 ...

  7. 文档在线预览开源实现方案三:OpenOffice + PDFRenderer + js

    之前的方案无法很好地解决异构平台及不同浏览器的兼容性问题,如方案一需要客户端浏览器支持flash而移动端浏览器无法支持这点,虽然移动端浏览器支持方案二,但是一些老版本的IE浏览器无法支持,例如IE8就 ...

  8. Effective Java 第三版——19. 如果使用继承则设计,并文档说明,否则不该使用

    Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将 ...

  9. Effective Java 第三版——74. 文档化每个方法抛出的所有异常

    Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...

随机推荐

  1. 【作业】 iterator,set_union 一些奇怪的语法

    关于set_union系列函数(需要有序)的第五个参数,output iterator. 网上都是用inserter(c,c.begin()) 但vs会编译报错 所以改成了back_inserter, ...

  2. LAMP下安装zabbix流水

    一.安装zabbix (1)创建用户和组 [root@dbking zabbix-2.2.1]# groupadd zabbix [root@dbking zabbix-2.2.1]# useradd ...

  3. SAPI

    https://en.wikipedia.org/wiki/Server_Application_Programming_Interface In computing, Server Applicat ...

  4. HTML 标签大全及属性

    基本结构标签: <HTML>,表示该文件为HTML文件 <HEAD>,包含文件的标题,使用的脚本,样式定义等 <TITLE>---</TITLE>,包含 ...

  5. REQUEST FORM 实例

    https://www.programcreek.com/python/example/51524/flask.request.form

  6. Spring@Autowired注解

    @Autowired注解可以对成员变量.方法和构造函数进行标注,来完成自动装配的工作. 注意:@Autowired默认是按照类型来注入的. 看下面的例子:例子是以对成员变量(field)为例进行的 p ...

  7. 15款Django开发常用软件包(转)

    原文:http://www.iteye.com/news/28697 Django是一款高级的Python Web框架,可以帮助开发者快速创建web应用.我们这里整理了15款Django开发中常用的软 ...

  8. 【虫师讲Selenium+Python】第三讲:操作测试对象

    一.首先呢,选择一个编辑器,我们这里选择的是Sublime Text >Ctrl+B为运行当前脚本的快捷方式 二.编写代码 #coding==utf-8 from selenium import ...

  9. CSS 3列等高

    方法1: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"&g ...

  10. java-mybaits-011-mybatis-拦截器计算耗时

    实现Mybatis官方提供的拦截器,用于记录SQL语句的执行时间 package com.github.bjlhx15.mybatis; /** * @author lihongxu * @since ...