实验4实验报告格式说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验4 类与java对象
专业:班级:姓名:学号:
实验报告文档的名称为:实验**专业班级姓名学号.doc
举例:实验4EC1姓名学号.doc
一、类的定义与对象的创建
【1】实验指导文档的实验内容一:有理数的类封装
【代码1】~【代码5】分别是什么?
【代码1】r1=new Rational(1,5);
【代码2】r2=new Rational(3,2);
【代码3】ational result=r1.add(r2)
【代码4】a=result.getNumerator();
【代码5】b=result.getDenominator();
在computer.java中增加计算有理数除法的代码?
Rational r1;
r1=new Rational(1,5);
Rational r2;
r2=new Rational(3,2);
Rational result=r1.div(r2);
在computer.java中增加计算1+3/2+5/3+8/5+13/8………的前10项和的代码
public class Computer {
public static void main(String args[]) {
Rational sum;
sum=new Rational(1,1);
int i;
for(i=2;i<11;i++){
sum=sum.add(new Rational(2*i-1,i));
}
int A=sum.getNumerator(); // result调用方法返回自己的分子
int B=sum.getDenominator();// result调用方法返回自己的分母
double p=A;
double q=B;
double SUM=p/q;
System.out.println("1+3/2+5/3+8/5+13/8………的前十项"+SUM);
}
}
【2】编写一个类,该类封装了一元二次方程共有的属性与功能,即该类有刻画方程系数的3个成员变量以及计算实根的方法。【电商、物流、工业工程专业同学将调试成功的代码粘贴到下面】
//Fangcheng.java
public class Fangcheng {
double a,b,c;
Fangcheng(){}
Fangcheng(double A,double B,double C){setABC(A,B,C);}
void setABC(double A,double B,double C){// 设置系数
a=A;
b=B;
c=C;
}
void getresult(){
double D;
D=b*b-4*a*c;
if(D<0)System.out.println("方程无解");
else{double x1,x2;
x1=((Math.sqrt(D))-b)/(2*a);
x2=(-1*b-(Math.sqrt(D)))/(2*a);
if(x1==x2)System.out.println("方程具有两个相同的解"+x1);
else System.out.println("方程有两个解,解一为"+x1+"解二为"+x2);
}
}
}
//Qiujie.java
public class Qiujie{
public static void main(String args[]) {
Fangcheng F1=new Fangcheng(1,0,3);
F1.getresult();
}
}
二、实例成员与类成员
【1】实验指导文档的实验内容二:实例成员与类成员
【代码1】~【代码14】分别是什么?
【代码1】float a;
【代码2】static float b;
【代码3】this.a=a;
【代码4】this.b=b;
【代码5】A.b=100;
【代码6】A.inputB();
【代码7】cat.setA(200);
【代码8】cat.setB(400);
【代码9】dog.setA(200);
【代码10】dog.setB(900);
【代码11】cat.inputA();
【代码12】cat.inputB();
【代码13】dog.inputA();
【代码14】dog.inputB();
将inputA()方法中的System.out.println(a);改写为System.out.println(a+b);编译是否出错?为什么?
不出错。在调用该语句时B 已经赋值
将inputB()方法中的System.out.println(b);改写为System.out.println(a+b);编译是否出错?为什么?
出错。在调用“A.inputB();”时A 还没赋值。
三、包的创建与使用
【1】实验指导文档的实验内容3 package语句和import语句
●编译Triangle.java源文件,生成的字节码文件Triangle.class所在的文件目录是?
●将Triangle.java中的package tom.jiafei;注释掉,程序编译后生成的字节码文件Triangle.class在哪个
文件夹下?
【2】课本P78第5题。
四类型包装器类的应用
[1]从命令行给main方法传递包含若干整数数据的参数,在main方法中求这些若干整数的和。