Java 入门经典 Chapter 12 课后习题答案
问:
编写一个抽象的Car类,它有两个字段:name(类型为String)和fuelEfficiency(类型为清单12.6中给出的FuelEfficiency)。该类还包括计算给定距离(以英里为单位)的最小和最大耗油量的方法。接着定义3个子类:EfficientCar、AcceptableCar和GasGuzzler,每个子类的构造方法都接收一个name并设置FuelEfficiency字段。最后,编写一个测试类进行测试。
答:
Car.java
package app12.Fuel;
public abstract class Car {
public String name;
public FuelEfficiency fuelEfficiency;
public abstract long maxFuel();
public abstract long minFuel();
}
FuelEfficiency.java
package app12.Fuel;
public enum FuelEfficiency {
EFFICIENT(33, 55),
ACCEPTABLE(20, 32),
GAS_GUZZLER(1, 19);
private int min;
private int max;