当前位置:文档之家› JAVA实验6答案

JAVA实验6答案

广东海洋大学学生实验报告书(学生用表)实验名称实验六. Java的接口与实现课程名称Java程序设计与开发技术课程号16232204学院(系) 信息学院专业计算机科学与技术班级计科学生姓名学号实验地点钟海楼04019实验日期2015年10月26日一、实验目的(1)学习掌握Java中类怎样实现接口、接口回调技术;(2)学习掌握Java 程序中面向接口的编程思想。

二、实验任务完成实验六指导上实验1、实验2、实验3的实验任务。

三、实验仪器设备和材料安装有J2SE开发工具的PC机。

四、实验内容和步骤实验1代码如下:Estimator.javainterface CompurerAverage{public double average(double x[]);}class Gymnastics implements CompurerAverage{public double average(double x[]){int count=x.length;double aver=0,temp=0;for(int i=0;i<count;i++){for(int j=i;j<count;j++){if(x[j]<x[i]){temp=x[j];x[j]=x[i];x[i]=temp;}}}GDOU-B-11-112for(int i=1;i<count-1;i++){aver=aver+x[i];}if(count>2)aver=aver/(count-2);elseaver=0;return aver;}}class School implements CompurerAverage{public double average(double[] x){int count=x.length;double sum=0;for(int i=0;i<count;i++){sum+=x[i];}return sum/count;}}public class Estimator{public static void main(String[] args){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 Gymnastics();double result=computer.average(a);System.out.printf("%n");System.out.printf("体操选手最后得分:%5.3f\n",result);computer=new School();result=computer.average(b);System.out.printf("班级考试平均分数:%-5.2f\n",result);}}运行结果:练习:---------- JAVAC ----------Estimator.java:27: 错误: School不是抽象的, 并且未覆盖CompurerAverage中的抽象方法average(double[])class School implements CompurerAverage{^1 个错误实验2代码如下:CheckCarWeight.javainterface ComputerWeight{public double computerWeight();}class Television implements ComputerWeight{public double computerWeight(){return 10.0;}}class Computer implements ComputerWeight{public double computerWeight(){return 8.0;}}class WashMachine implements ComputerWeight{public double computerWeight(){return 35.5;}}class Truck{ComputerWeight[] goods;double totalWeihts=0;Truck(ComputerWeight[] goods){this.goods=goods;}public void setGoods(ComputerWeight[] goods){this.goods=goods;}public double getTotalWeigths(){totalWeihts=0;for(int i=0;i<goods.length;i++){totalWeihts+=goods[i].computerWeight();}return totalWeihts;}}public class CheckCarWeight{public static void main(String[] args){ComputerWeight[] goods=new ComputerWeight[650];for(int i=0;i<goods.length;i++){if(i%3==0)goods[i]=new Television();if(i%3==1)goods[i]=new Computer();if(i%3==2)goods[i]=new WashMachine();}Truck truck=new Truck(goods);System.out.printf("\n货车装载的货物重量:%-8.5f kg\n",truck.getTotalWeigths());goods=new ComputerWeight[68];for(int i=0;i<goods.length;i++){if(i%2==0)goods[i]=new Television();elsegoods[i]=new WashMachine();}truck.setGoods(goods);System.out.printf("货车装载的货物重量:%-8.5f kg\n",truck.getTotalWeigths());}}运行结果:练习:class Refrigerrator implements ComputerWeight{public double computerWeight(){return 10.5;}}不需修改Truck类实验3代码如下:CheckDogState.javainterface DogState{public void showState();}class SoftlyState implements DogState{public void showState(){System.out.println("听主人的命令");}}class MeetEnemyState implements DogState{public void showState(){System.out.println("狂叫,并冲向去狠咬敌人");}}class MeetFriendState implements DogState{public void showState(){System.out.println("晃动尾巴,表示欢迎");}}class MeetAnotherDog implements DogState{public void showState(){System.out.println("嬉戏");}}class Dog{DogState state;public void show(){state.showState();}public void setState(DogState s){state=s;}}public class CheckDogState{public static void main(String[] args){Dog yellowDog=new Dog();System.out.print("狗在主人面前:");yellowDog.setState(new SoftlyState());yellowDog.show();System.out.print("狗遇到敌人:");yellowDog.setState(new MeetEnemyState());yellowDog.show();System.out.print("狗遇到朋友:");yellowDog.setState(new MeetFriendState());yellowDog.show();System.out.print("狗遇到同伴:");yellowDog.setState(new MeetAnotherDog());yellowDog.show();}}运行结果:练习:CheckWaterState.javainterface WaterState{public void showState();}class ColdState implements WaterState{public void showState(){System.out.println("固态");}}class OrdinaryState implements WaterState{ public void showState(){System.out.println("液态");}}class HotState implements WaterState{public void showState(){System.out.println("气态");}}class Water{WaterState state;public void show(){state.showState();}public void setState(WaterState s){state=s;}}public class CheckWaterState{public static void main(String[] args){Water water=new Water();System.out.print("低于0°C:");water.setState(new ColdState());water.show();System.out.print("高于0°C且低于100°C:");water.setState(new OrdinaryState());water.show();System.out.print("高于100°C:");water.setState(new HotState());water.show();}}成绩指导教师孙兵日期2015年10月30日注:请用A4纸书写,不够另附纸。

相关主题