Java实验项目二 面向对象编程 3部分Word格式文档下载.docx
- 文档编号:22931675
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:25
- 大小:20.36KB
Java实验项目二 面向对象编程 3部分Word格式文档下载.docx
《Java实验项目二 面向对象编程 3部分Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《Java实验项目二 面向对象编程 3部分Word格式文档下载.docx(25页珍藏版)》请在冰豆网上搜索。
if(boo)
doublep=(sideA+sideB+sideC)/2.0;
area=Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC));
returnarea;
System.out.println("
不是一个三角形,不能计算面积"
);
return0;
publicvoidsetABC(doublea,doubleb,doublec)
【代码6】//参数a,b,c分别赋值给sideA,sideB,sideC
if(【代码7】)//a,b,c构成三角形的条件表达式
【代码8】//给boo赋值。
【代码9】//给boo赋值。
}
classLader
doubleabove,bottom,height,area;
Lader(doublea,doubleb,doubleh)
{
【代码10】//方法体,将参数a,b,c分别赋值给above,bottom,height
doublegetArea()
【代码11】//方法体,,要求计算出area返回
classCircle
doubleradius,area;
Circle(doubler)
【代码12】//方法体
doublegetArea()
【代码13】//方法体,要求计算出area返回
【代码14】//getArea方法体的代码,要求计算出length返回
voidsetRadius(doublenewRadius)
radius=newRadius;
doublegetRadius()
returnradius;
publicclassAreaAndLength
publicstaticvoidmain(Stringargs[])
doublelength,area;
Circlecircle=null;
Trangletrangle;
Laderlader;
【代码15】//创建对象circle
【代码16】//创建对象trangle。
【代码17】//创建对象lader
【代码18】//circle调用方法返回周长并赋值给length
圆的周长:
"
+length);
【代码19】//circle调用方法返回面积并赋值给area
圆的面积:
+area);
【代码20】//trangle调用方法返回周长并赋值给length
三角形的周长:
【代码21】//trangle调用方法返回面积并赋值给area
三角形的面积:
【代码22】//lader调用方法返回面积并赋值给area
梯形的面积:
【代码23】//trangle调用方法设置三个边,要求将三个边修改为12,34,1。
【代码24】//trangle调用方法返回面积并赋值给area
【代码25】//trangle调用方法返回周长并赋值给length
2、学习实例成员与类成员的区别:
按照下面模板代码中的注释信息将该程序补充完整并调试运行。
Example.java
classA
【代码1】//声明一个float型实例变量a
【代码2】//声明一个float型类变量b,即static变量b
voidsetA(floata)
【代码3】//将参数a的值赋值给成员变量a
voidsetB(floatb)
【代码4】//将参数b的值赋值给成员变量b
floatgetA()
returna;
floatgetB()
returnb;
voidinputA()
System.out.println(a);
staticvoidinputB()
System.out.println(b);
publicclassExample
publicstaticvoidmain(Stringargs[])
【代码5】//通过类名操作类变量b,并赋值100
【代码6】//通过类名调用方法inputB()
Acat=newA();
Adog=newA();
【代码7】//cat象调用方法setA(inta)将cat的成员a的值设置为200
【代码8】//cat调用方法setB(intb)将cat的成员b的值设置为400
【代码9】//dog象调用方法setA(inta)将dog的成员a的值设置为150
【代码10】//dog调用方法setB(intb)将dog的成员b的值设置为300
【代码11】//cat调用inputA()。
【代码12】//cat调用inputB()。
【代码13】//dog调用inputA()。
【代码14】//dog调用inputB()。
3、使用package语句与import语句:
上机调试下面程序,学会package与import语句的用法。
SquareEquation.java
packagetom.jiafei;
publicclassSquareEquation
doublea,b,c;
doubleroot1,root2;
publicSquareEquation(doublea,doubleb,doublec)
this.a=a;
this.b=b;
this.c=c;
if(a!
=0)
boo=true;
boo=false;
publicvoidgetRoots()
是一元2次方程"
doubledisk=b*b-4*a*c;
if(disk>
root1=(-b+Math.sqrt(disk))/(2*a);
root2=(-b-Math.sqrt(disk))/(2*a);
System.out.printf("
方程的根:
%f,%f\n"
root1,root2);
方程没有实根\n"
不是一元2次方程"
publicvoidsetCoefficient(doublea,doubleb,doublec)
SunRise.java
importtom.jiafei.*;
classSunRise
publicstaticvoidmain(Stringargs[])
SquareEquationequation=newSquareEquation(4,5,1);
equation.getRoots();
equation.setCoefficient(-3,4,5);
[实验参考代码]
1、【代码1】:
sideA=a;
sideB=b;
sideC=c;
【代码2】:
a+b>
c&
&
a+c>
b&
c+b>
a
【代码3】:
【代码4】:
【代码5】:
length=sideA+sideB+sideC;
returnlength;
不是一个三角形,不能计算周长"
【代码6】:
【代码7】:
a
【代码8】:
【代码9】:
【代码10】:
above=a;
bottom=b;
height=h;
【代码11】:
area=(above+bottom)/2*height;
【代码12】:
radius=r;
【代码13】:
return3.14*radius*radius;
【代码14】:
return3.14*2*radius;
【代码15】:
circle=newCircle(10);
【代码16】:
trangle=newTrangle(3,4,5);
【代码17】:
lader=newLader(3,4,10);
【代码18】:
length=circle.getLength();
【代码19】:
area=circle.getArea();
【代码20】:
length=trangle.getLength();
【代码21】:
area=trangle.getArea();
【代码22】:
area=lader.getArea();
【代码23】:
trangle.setABC(12,34,1);
【代码24】:
【代码25】:
2、【代码1】:
floata;
staticfloatb;
A.b=100;
A.inputB();
cat.setA(200);
cat.setB(400);
dog.setA(150);
dog.setB(300);
cat.inputA();
cat.inputB();
dog.inputA();
dog.inputB();
第2部分继承与接口
1、掌握java继承中父类及其子类的定义方法。
2、掌握子类重写父类同名方法的方法。
3、掌握用法。
1、定义父类People,分别定义People类的子类ChinaPeople,AmericanPeople和BeijingPeople并分别重写父类中的各个方法。
最后在主方法中分别创建各子类的对象并调用各自的方法打印输出信息。
classPeople
{
protecteddoubleweight,height;
publicvoidspeakHello()
yayawawa"
publicvoidaverageHeight()
height=173;
averageheight:
+height);
publicvoidaverageWeight()
weight=70;
averageweight:
+weight);
classChinaPeopleextendsPeople
【代码1】//重写publicvoidspeakHello()方法,要求输出类似“你好,吃了吗”这样的
//汉语信息
【代码2】//重写publicvoidaverageHeight()方法,要求输出类似
//“中国人的平均身高:
168.78厘米”这样的汉语信息
【代码3】//重写publicvoidaverageWeight()方法,
//要求输出类似“中国人的平均体重:
65公斤”这样的汉语信息
publicvoidchinaGongfu()
【代码4】//输出中国武术的信息,例如:
坐如钟,站如松,睡如弓"
等
classAmericanPeopleextendsPeople
【代码5】//重写publicvoidspeakHello()方法,要求输出类似
//“Howdoyoudo”这样的英语信息。
【代码6】//重写publicvoidaverageHeight()方法
【代码7】//重写publicvoidaverageWeight()方法
publicvoidamericanBoxing()
【代码8】//输出拳击的信息,例如,“直拳”、“钩拳”等
classBeijingPeopleextendsChinaPeople
【代码9】//重写publicvoidspeakHello()方法,要求输出类似“您好”这样的汉语信息
【代码10】//重写publicvoidaverageHeight()方法
【代码11】//重写publicvoidaverageWeight()方法
publicvoidbeijingOpera()
【代码12】//输出京剧的信息
ChinaPeoplechinaPeople=newChinaPeople();
AmericanPeopleamericanPeople=newAmericanPeople();
BeijingPeoplebeijingPeople=newBeijingPeople();
chinaPeople.speakHello();
americanPeople.speakHello();
beijingPeople.speakHello();
chinaPeople.averageHeight();
americanPeople.averageHeight();
beijingPeople.averageHeight();
chinaPeople.averageWeight();
americanPeople.averageWeight();
beijingPeople.averageWeight();
chinaPeople.chinaGongfu();
americanPeople.americanBoxing();
beijingPeople.beijingOpera();
beijingPeople.chinaGongfu();
2、读懂下面模板代码,按要求补充程序并调试运行。
掌握抽象类的定义及其实现方法,学习上转型对象的运用方法。
abstractclassEmployee
publicabstractdoubleearnings();
classYearWorkerextendsEmployee
【代码1】//重写earnings()方法
classMonthWorkerextendsEmployee
【代码2】//重写earnings()方法。
classWeekWorkerextendsEmployee
【代码3】//重写earnings()方法。
classCompany
Employee[]employee;
doublesalaries=0;
Company(Employee[]employee)
this.employee=employee;
publicdoublesalariesPay()
salaries=0;
【代码4】//计算salaries。
returnsalaries;
publicclassHardWork
Employee[]employee=newEmployee[20];
for(inti=0;
i<
employee.length;
i++)
if(i%3==0)
employee[i]=newWeekWorker();
elseif(i%3==1)
employee[i]=newMonthWorker();
elseif(i%3==2)
employee[i]=newYearWorker();
Companycompany=newCompany(employee);
公司年工资总额:
+company.salariesPay());
3、读懂下面模板代码,按要求补充程序并调试运行。
掌握接口的定义及其实现方法,学习接口回调的运用方法。
interfaceComputerWeight
publicdoublecomputeWeight();
classTelevisionimplementsComputerWeight
{【代码1】//实现computeWeight()方法。
classComputerimplementsComputerWeight
{【代码2】//实现computeWeight()方法。
}
classWashMachineimplementsComputerWeight
{【代码3】//实现computeWeight()方法。
classCar
{ComputerWeight[]goods;
doubletotalWeights=0;
Car(ComputerWeight[]goods)
this.goods=goods;
publicdoublegetTotalWeights()
totalWeights=0;
【代码4】//计算totalWeights
returntotalWeights;
publicclassRoad
{ComputerWeight[]goodsOne=newComputerWeight[50],
goodsTwo=newComputerWeight[22];
goodsOne.length;
{if(i%3==0)
goodsOne[i]=newTelevision();
goodsOne[i]=newComputer();
goodsOne[i]=newWashMachine();
goodsTwo.length;
goodsTwo[i]=newTelevision();
goodsTwo[i]=newComputer();
goodsTwo[i]=newWashMachine();
Car大货车=newCar(goodsOne);
大货车装载的货物重量:
+大货车.getTotalWeigh
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java实验项目二 面向对象编程 3部分 Java 实验 项目 面向 对象 编程 部分