多选题
The Drivable interface: public interface Drivable
{ /* * Drivable definitions
*/ } The Tractor class:
public class Tractor implements Drivable { /*
* Tractor functionality */ }
The Vehicle class: public class Vehicle {
/* * Vehicle functionality */
} The Car class: public class Car extends
Vehicle implements Drivable { /* * Car
functionality */ } The Truck
class: public class Truck extends Vehicle implements Drivable
{ /* * Truck functionality
*/ }
多选题
Given the preceding classes and interface, would the following code segment produce errors when compiled?
Car car = new Car();
Vehicle vehicle = car;
A. No errors would be produced.
B. This code would result in compile errors.
多选题
Given the preceding classes and interface, would the following code segment produce errors when compiled?
Truck truck = new Truck();
Drivable drivable = truck;
A. No errors would be produced.
B. This code would result in compile errors.
多选题
Given the preceding classes and interface, would the following code segment produce errors when compiled?
Tractor tractor = new Tractor();
Vehicle vehicle = tractor;
A. No errors would be produced.
B. This code would result in compile errors.
【正确答案】
B
【答案解析】这段代码将会导致编译错误,因为Vehicle类不是Tractor类的超类。A不正确。
多选题
Given the preceding classes and interface, would the following code segment produce errors when compiled?
Drivable drivable = new Drivable();
Truck truck = drivable;
A. No errors would be produced.
B. This code would result in compile errors.
【正确答案】
B
【答案解析】这段代码会导致编译错误,因为Drivable是一个接口,它不能被实例化。A不正确。
多选题
Given the preceding classes and interface, would the following code segment produce errors when compiled?
Vehicle vehicle = new Vehicle();
Object o = vehicle;
A. No errors would be produced.
B. This code would result in compile errors.
多选题
Given the preceding classes and interface, would the following code segment produce errors when compiled?
Truck truck = new Truck();
Object o = truck;
A. No errors would be produced.
B. This code would result in compile errors.
【正确答案】
A
【答案解析】不会产生错误,因为Object类是所有Java对象的超类。B不正确。
多选题
In what cases is casting needed? (Choose all that apply.)