当前位置:文档之家› Java实验报告三类和对象

Java实验报告三类和对象


Complex c1 = new Complex(); Complex c2 = new Complex(); String output = " 两 个 复 数 : \n"+c1+"\n"+c2+"\n"+" 两 个 复 数 相 加 : \n"+c1.plus(c2)+
" 两 个 复 数 相 减 : \n"+c1.minus(c2)+" 两 个 复 数 相 乘 : \n"+c1.times(c2)+
预期输出: 实际输出:
分析 与预期结果一致。
六、实验结果
用与测试用例不同的输入数据运行算法,写出得到的结果,并分析结果是否 正确。
第一组输入:
第二组输入: 第一组输出结果:
第二组输出结果: 结果分析:
两组的输出结果都正确。
七、总结
不应该一开始就考虑怎么编写代码,而是应该想好其框架。注意语法上的错误, 而逻辑上的错误在改正上有很大的难度,在这方面要多加交流。
realPart * complex.imaginaryPart + imaginaryPart * complex.realPart);
return c; } public Complex divideBy(Complex complex){
double t = complex.realPart * complex.realPart + complex.imaginaryPart * complex.imaginaryPart;
Complex c = new Complex((realPart * complex.realPart + imaginaryPart * complex.imaginaryPart)/t
,(imaginaryPart * complex.realPart - realPart * complex.imaginaryPart) / t);
imaginaryPart + complex.imaginaryPart); return c; } public Complex minus(Complex complex){ Complex c = new Complex(realPart - complex.realPart,
imaginaryPart - complex.imaginaryPart); return c; } public Complex times(Complex complex){ Complex c = new Complex(realPart * complex.realPart - imaginaryPart * complex.imaginaryPart,
this.realPart = realPart;
this.imaginaryPart = 0;
}
public Complex(double realPart,double imaginaryPart){
this.realPart = realPart;
this.imaginaryPart = imaginaryPart;
实现 Complex 类中的方法
进行编译
进行测试,使用的测试用例:
输入:
预期输出:

五、调试过程
1. 编译过程 记录算法实现中发现的语法错误及改正 以下代码不能实现预期的结果:
应该改成如下代码:
2. 调试过程 记录算法实现中发现的逻辑错误及改正,对每个测试用例,记录实际输出, 并与预期输出进行比较,如果不同,分析产生错误的原因并改正。 输入:
}
public void setimaginaryPart(double val){
imaginaryPart = val;
}
public Complex plus(Complex complex){
Complex c = new Complex(realPart + complex.realPart,
附录:
import javax.swing.*;
public class Complex {
private double realPart;
private doubllic Complex(){
realPart = Double.parseDouble(JOptionPane.showInputDialog("Please
return c; } public Complex conjugate(){
Complex c = new Complex(realPart,-imaginaryPart); return c; } public String toString(){ String str = ""; if(realPart != 0 && imaginaryPart > 0)
enter the realpart:"));
imaginaryPart
=
Double.parseDouble(JOptionPane.showInputDialog("Please
enter
the
imaginarypart:"));
}
public Complex(double realPart){
return str+imaginaryPart+"i"+"\n"; } if(realPart == 0 && imaginaryPart == 0){ System.out.println("重新输入:"); } return str+realPart+"\n"; } public static void main(String[] args){
计算机与信息学院实验报告

软件系 专业 软件工程
年级
08 级 成绩
姓名
学号
实验室
T312
机号
48
实验时间 2010 年 11 月 1 日下午 3、4 节
教师签字
实验(三) 类和对象
一、实验目的和要求
1. 掌握类的构造函数的重载 2. 深入理解类和对象 3. 学习 NetBeans 中 UML 项目的创建类并生成相应代码的方法
"两个复数相除:\n"+c1.divideBy(c2)+"c1 的共厄复数:\n"+ c1.conjugate()+"c2 的共厄复数:\n"+c2.conjugate(); JOptionPane.showMessageDialog(null,output); } }
}
public double getRealPart(){
return this.realPart;
}
public void setRealPart(double val){
realPart = val;
}
public double getimaginaryPart(){
return this.imaginaryPart;
return str+realPart+"+"+imaginaryPart+"i"+"\n"; if(realPart != 0 && imaginaryPart < 0)
return str+realPart+imaginaryPart+"i"+"\n"; if(realPart == 0 && imaginaryPart != 0){
二、实验内容和原理
设计一个复数类,能够完成复数之间的基本运算,重写方法 toString(),使 其能输出此复数(形式为: 实部 + 虚部 i)。
要求设计的复数类必须有三个构造函数,分别为无参数、1 个参数和 2 个参 数的构造函数,完成的基本运算包括两个复数的加、减、乘、除法和共轭复数。
三、实验环境
1. 硬件环境: 2. 软件环境:JDK1.5
四、算法描述及实验步骤
1. 算法描述(可以用类图、流程图、伪代码或源程序描述)
2. 实验步骤
创建一个 UML 项目,并设计类 Complex 如下图
创建一个 Java 应用项目
把 UML 项目中的 Complex 自动生成代码到 Java 应用项目中
相关主题