JAVA实验6答案
System.out.pri nt("狗遇到朋友:"); yellowDog.setState(new MeetFriendState()); yellowDog.show();
System.out.pri nt("狗遇到同伴:"); yellowDog.setState(new MeetAnotherDog()); yellowDog.show();
public void showState(){
System.out.println(”晃动尾巴,表示欢迎");
}
}
class MeetA no therDog impleme nts DogState{
public void showState(){ System.out.pri ntl n("嬉戏");
truck.getTotalWeigths());
goods=new ComputerWeight[68];
for(int i=0;i<goods.length;i++){
if(i%2==0)
goods[i]=new Televisi on();
else
goods[i]=new WashMachi ne();
}
}
运行结果:
9.668
73.09
练习:
JAVAC
Estimator.java:27:错误:School不是抽象的,并且未覆盖CompurerAverage中的抽
象方法average(double[])
class School impleme nts CompurerAverage{
A
1个错误
实验2
}
}
class Dog{
DogState state;
public void show(){
state.showState();
}
public void setState(DogState s){ state=s;
}
}
public class CheckDogState{
public static void main( Stri ng[] args){
System.out.pri ntl n("气态");
}
class Water{
WaterState state;
public void show(){
state.showState();
}
public void setState(WaterState s){ state=s;
}
}
public class CheckWaterState{
三、实验仪器设备和材料
安装有J2SE开发工具的PC机。
四、实验内容和步骤
实验1
代码如下:
Estimator.java
in terface CompurerAverage{
public double average(double x[]);
}
class Gymn astics impleme nts CompurerAverage{ public double average(double x[]){ int coun t=x .len gth;
Dog yellowDog=new Dog();
System.out.pri nt("狗在主人面前:"); yellowDog.setState( new SoftlyStateO);
yellowDog.show();
System.out.pri nt("狗遇到敌人:"); yellowDog.setState( new MeetE nemyState()); yellowDog.show();
return 10.0;}
}
class Computer impleme nts ComputerWeight{
public double computerWeight(){
return 8.0;}
}
class WashMach ine impleme nts ComputerWeight{
public double computerWeight(){
this.goods=goods;
}
public double getTotalWeigths(){
totalWeihts=0;
for(int i=0;i<goods.length;i++){
totalWeihts+=goods[i].computerWeight();
}
return totalWeihts;
double a[]={9.89,9.88,9.99,9.12,9.69,9.76,8.97};
double b[]={89,56,78,90,100,77,56,45,36,79,98};
CompurerAverage computer;
computer =new Gymn astics();
double result=computer.average(a);
return 10.5;}
}
不需修改Truck类
实验3
代码如下:
CheckDogState.java
in terface DogState{
public void showState();
}
class SoftlyState impleme nts DogState{
public void showState(){
System.out.println(”听主人的命令");
}
}
class MeetE nemyState impleme nts DogState{
public void showState(){
System.out.println(”狂叫,并冲向去狠咬敌人");
}
}
class MeetFrie ndState impleme nts DogState{
System.out.pri ntl n("固态");
}
}
class Ordin aryState impleme nts WaterState{ public void showState(){
System.out.pri ntl n("液态");
}
}
class HotState impleme nts WaterState{ public void showState(){
}
}
public class CheckCarWeight{
public static void main( Stri ng[] args){
ComputerWeight[] goods=new ComputerWeight[650]; for(int i=0;i<goods.length;i++){
return 35.5;}
}
class Truck{
ComputerWeight[] goods;
double totalWeihts=0;
Truck(ComputerWeight[] goods){
this.goods=goods;
}
public void setGoods(ComputerWeight[] goods){
double aver=0,temp=0;
for(int i=0;i<count;i++){ for(i nt j=i;j<co un t;j++){ if(x[j]<x[i]){ temp=x[j]; x[j]=x[i]; x[i]=temp;
}
}
}
for(i nt i=1;i<co un t-1;i++){
}
}
运行结果:
狗在主人面前:听主人的命令
狗遇到敌人:狂叫,并冲向去狠咬敌人
狗遇到朋友:晃动尾巴,表示欢迎 狗遇到同伴;嬉戏
请按任意键继续
练习:
CheckWaterState.java
in terface WaterState{
public void showState();
}
class ColdState impleme nts WaterState{ public void showState(){
System.out.pri ntf("% n");
System.out.pri ntf("体操选手最后得分:%5.3f\n",result);
computer =new School();
result=computer.average(b);
System.out.pri ntf("班级考试平均分数:%-5.2f\n",result);
}
truck.setGoods(goods);
System.out.pri ntf("货车装载的货物重量:%-8.5f kg\n",
truck.getTotalWeigths());
}
}
运行结果:
货车装载的货物重量:
练习:
class Refrigerrator impleme nts ComputerWeight{ public double computerWeight(){
public static void main( Stri ng[] args){
Water water =new Water();