Suppose a class Car and its subclass Honda both have a method called speed as part of the class definition. rentalH refers to an object of the type Honda and the following statements are found in the code: rentalh.cost(); super.speed(); what will the first statement do?
A. Nothing will be called since the code will not compile as a result of multiple definitions of speed.
B. The cost method in Car will be called.
C. The cost method in Honda will be called.
D. Overloading will be used to determine which cost method to use.

Respuesta :

Answer:

C. The cost method in Honda will be called.

Explanation:

The first statement will cause the cost method in Honda to be called. This is because rentalh is a object of the subclass Honda. Therefore, any method that is called using this object variable will target the elements within the Honda subclass. In this case, the cost() method is being called using the rentalh variable which will look for the cost() method within the scope of the Honda subclass. In order to target the parent class Car it would need to be called using the super variable as in statement 2.

ACCESS MORE
EDU ACCESS