我想知道在代码中将实现哪种speed()方法

时间:2018-07-30 10:47:21

标签: java

我是Java的初学者,所以有时我很难理解一些示例。我想知道代码中将实现哪种speed方法以及哪种speed()方法的print语句班级将在输出中打印出来?

   class Car{
   public Car()
   {
    System.out.println("Class Car");
   }
   public void vehicleType()
   {
    System.out.println("Vehicle Type: Car");
   }
}
class Maruti extends Car{
   public Maruti()
   {
        System.out.println("Class Maruti");
   }
  public void brand()
   {
    System.out.println("Brand: Maruti");
   }
   public void speed()
   {
    System.out.println("Max: 90Kmph");
   }
}
public class Maruti800 extends Maruti{

   public Maruti800()
   {
    System.out.println("Maruti Model: 800");
   }
   public void speed()
   {
    System.out.println("Max: 80Kmph");
   }
   public static void main(String args[])
   {
     Maruti800 obj=new Maruti800();
     obj.vehicleType();
     obj.brand();
     obj.speed();
   }
}

1 个答案:

答案 0 :(得分:1)

似乎您想问一问,在您执行speed()方法中的代码时,将调用哪个方法(未实现)。由于main的类型为obj(由于Maruti800),因此将调用new Maruti800()类中的speed方法并输出{{ 1}}。相比之下,如果您将对象声明为Maruti800,则Max: 80Kmph将从Maruti obj = new Maruti();类中调用方法obj.speed()