Unit 3 Mini Project Answer: Racing Garage
Complete Program
class RacingGarage {
private String carName;
private int targetHorsepower;
private int currentHorsepower;
public RacingGarage(String carName, int targetHorsepower) {
this.carName = carName;
this.targetHorsepower = targetHorsepower;
this.currentHorsepower = 0;
}
public void addHorsepower(int horsepower) {
currentHorsepower += horsepower;
}
public int getHorsepower() {
return currentHorsepower;
}
public boolean reachedTarget() {
return currentHorsepower >= targetHorsepower;
}
public String getSummary() {
return carName + ": " + currentHorsepower + " / "
+ targetHorsepower + " HP";
}
}
public class Main {
public static void main(String[] args) {
RacingGarage garage = new RacingGarage("Falcon GT", 500);
garage.addHorsepower(220);
garage.addHorsepower(310);
System.out.println(garage.getHorsepower());
System.out.println(garage.reachedTarget());
System.out.println(garage.getSummary());
}
}
Output
530
true
Falcon GT: 530 / 500 HP
Key Points
- The constructor has no return type and initializes the object.
this.carName and this.targetHorsepower refer to instance variables.
addHorsepower is a void method that changes state. The other methods return an int, boolean, and String value.