20753 - VictoriaBrown/MyProgrammingLab_Ch10 GitHub Wiki

QUESTION:

Write a class definition for an abstract class , Vehicle, that contains: a double instance variable , maxSpeed a protected double instance variable , currentSpeed a constructor accepting a double used to initialize the maxSpeed instance variable an abstract method , accelerate, that accepts no parameters and returns nothing. a method getCurrentSpeed that returns the value of currentSpeed a method getMaxSpeed that returns the value of maxSpeed a method , pedalToTheMetal, that repeatedly calls accelerate until the speed of the vehicle is equal to maxSpeed. pedalToTheMetal returns nothing.

CODE:

 public abstract class Vehicle {
// Instance variable maxSpeed & currentSpeed
private double maxSpeed;
protected double currentSpeed;

// Constructor:
public Vehicle(double maxSpeed) {
	this.maxSpeed = maxSpeed;
}

// Abstract method accelerate:
public abstract void accelerate();

// Return current speed (get method):
public double getCurrentSpeed() {
	return currentSpeed;
}

// Return max speed (get method):
public double getMaxSpeed() {
	return maxSpeed;
}

// Calls accelerate until current speed == to max speed
public void pedalToTheMetal() {
	while (currentSpeed < maxSpeed) {
		accelerate();
	}
}

}