阅读以下说明和Java程序,将应填入(n)处的字句写在对应栏内。 [说明] 下面程序是为汽车市场编制的一个程序的一部分。其中automobile是基类。 [Java程序] class MainJava{ public

admin2010-12-16  35

问题 阅读以下说明和Java程序,将应填入(n)处的字句写在对应栏内。
   [说明]
   下面程序是为汽车市场编制的一个程序的一部分。其中automobile是基类。
   [Java程序]
   class MainJava{
   public static void main(String agr[]){
   car sedan=new car();
   sedan.initialize(24,20.0,4);
   System.out.println ("The sedan can travel"
   +  (1) +"miles.\n");
   System.out.println ("The sedan has"
   +  (2) +"doors.\n");
   }
}
class automobile{
   protected int miles_per_gallon;    //汽车每加仑行驶公里数
     (3) double fuel_capacity;    //油箱容积
   public void initialize(int in_mpg,int in_fuel){
   miles_per_galion=in_mpg;
   fuel_capacity=in_fuel;
   }
   public int get_mpg(){//提供一辆特定汽车每加仑公里数
   return miles_per_gallon;
   }
   public double get_fuel(){//提供油箱容积
   return fuel_capacity;
   }
   public double travel_distance(){//计算满油箱情况下的可行驶总公里数
   return  (4);
   }
}
class car  (5)  {
   private int Total_doors;
   public void initialize(int in_mpg,double in_fuel,int doors){
   Total_doors=doors;
   miles_per_gallon=in_mpg;
   fuel_capacity=in_fuel;
   }
   public int doors(){
   return Total_doors;
   }
}

选项

答案(1) sedan.travel_distance() (2) sedan.doors() (3) protected (4) fuel_capacity/miles_per_gallon (5) extends automobile

解析 本题以Java语言为载体,考查面向对象程序设计中的关于类的几个概念,包括继承以及基类和派生类中函数的调用。
   本题的功能是定义了一个automobile基类,并由其派生出了car类,主函数中定义了car的对象,并通过该对象调用了基类和派生类中的函数。
   首先,通过整体阅读该题目,我们发现类car中的initialize函数直接对基类中的两个成员函数赋值,所以基类中的两个成员函数应该是被保护的,(3)处应填入“protected”。在基类中提供了这样一个成员函数travel_distance,它返回的是该交通工具的可能行驶距离,根据题目中给出的数据,(4)处应填入“fuel_capacity/miles_per_gallon”。
   其次,本题还考查了派生类继承的方式,由于在主函数中直接通过car的对象调用了基类的公有函数,(5)处应填入“extends automobile”。
   最后,通过定义car的对象sedan,分别调用了基类和派生类中的一个函数,(1)处应填入“sedan.travel_distance()”,(2)处应填入“sedan.doors()”。
转载请注明原文地址:https://jikaoti.com/ti/2XW7FFFM
0

最新回复(0)