已知对某载客车辆(Car)进行

阅读下列说明、图和Java代码,将应填入(n)处的字句写在对应栏内。

【说明】

已知对某载客车辆(Car)进行类建模,如图7-1所示,其中类Engine表示发动机引擎,类Wheel表示车轮,类Body表示车身,类Driver表示司机,类Passenger表示乘客。

【Java代码】

class Body{ //此处代码省略 ); //车身类

class Passenger{ //此处代码省略 )/ //乘客类

class Wheel{ //此处代码省略 ); //车轮类

class Driver{ //司机类

public String name; //表示第几路公交车司机

public Driver(String driverName){name = driverName/) //构造函数

};

class Engine{//引擎类

public String engineNo;//引擎编号

public Engine(String engineNo){this.engineNo=engineNo;)//构造函数

};

public class Car{//汽车类

static final int(1)=7; //定义最多载客数

static final int MAX WHEELS =5; //定义最多轮胎数

protected Engine engine;

protected Driver driver;

protected Body body=new Body();

protected Wheel[] wheels;

protected Passenger[]passengers;

public Car(Driver driver){ //构造函数

(2).driver=driver;

engine=new Engine("TX6536型号引擎");

wheels=new Wheel[MAX WHEELS];

passengers=new Passenger[MAX_PASSENGERS];

for(int index=0;index<MAX_WHEELS;index++){

wheels[index]=new Wheel();

}

for(int index=0;index<MAX_PASSENGERS;index++){

passengers[index]=null;

}

}

int getPassengerNumber(){//获取车上乘客数量

//此处代码省略

}

void getOnPassenger(Passenger aPassenger){//乘客上车

//此处代码省略

}

void run(){ //开车

if((3)){System.out.println("司机尚未上车!");return;}

//此处代码省略

}

public static void main(String args[]){

Driver driver=new Driver("第五路公交车司机");

Car car=new Car((4));

for (int index = 0 ; index < MAX_PASSENGERS; index ++)

car.getOnPassenger((5) Passenger());

car.run();

}

}


正确答案:(1)MAX_PASSENGERS (2)this (3)driver==null (4)driver (5)new
(1)MAX_PASSENGERS (2)this (3)driver==null (4)driver (5)new 解析:根据类图描述[分析]可得:一辆汽车可以载0~7名乘客,一辆汽车可以被一个或者多个司机驾驶,并且一辆汽车有4~5个轮胎,一个引擎和一个车框架。程序代码中空(1)处表示一辆汽车最多载客数目,从后面的程序代码[分析]可得,应该填写 MAX PASSENGERS。空(2)处主要设置车的假设司机,由于参数的名称与成员变量的名称相同,因此需要加上this以示区别。空(3)处主要用于判断司机是否上车,因此,代码应该对汽车所维持的司机对象的引用是否为空进行判断。空(4)处用于产生一个汽车对象,所以需要给汽车对象传递合适的参数,构造方法中需要传递一个司机对象,因此应该将driver对象传递到汽车对象中。空(5)处表示乘客上车,getOnPassenger要求传递的是乘客对象,因此空缺处应为构造乘客对象的代码。

猜你喜欢

转载自blog.csdn.net/lxzpp/article/details/80310844
car