Java Java Objects Harnessing the Power of Objects Overload Methods

Christopher Marston
Christopher Marston
549 Points

I don't know how to do this question and i don't understand what its asking of me

The question is "Create a new method named drive that accepts no arguments. It should call the newer drive method passing in a 1 for the default."

GoKart.java
class GoKart {
  public static final int MAX_BARS = 8;
  private String color;
  private int barCount;
  private int lapsDriven;
  public GoKart(String color) {
    this.color = color;
  }

  public String getColor() {
    return color;
  }
  public void charge() {
    barCount = MAX_BARS;
  }

  public boolean isBatteryEmpty() {
    return barCount == 0;
  }

  public boolean isFullyCharged() {
    return MAX_BARS == barCount;
  }

  public void drive() {
    lapsDriven++;
    barCount--;
  }
  public void drive(int lapsDriven) {
    lapsDriven += lapsAmount;
    barCount-= barCount;
    drive = 1;
  }
  public void drive(){
    drive("1");
}

1 Answer

Daniel Turato
PRO
Daniel Turato
Java Web Development Techdegree Graduate 30,105 Points

So you need to create a 2nd drive method that takes 0 arguments and calls the 1st drive method passing 1 into it's parameters. Like so:

public void drive(int lapsDriven) {
    lapsDriven += lapsAmount;
    barCount-= barCount;
    drive = 1;
  }

public void drive() {
    drive(1);
}
Christopher Marston
Christopher Marston
549 Points

Thank you, I'm a little shaky on the meanings of a lot of the jargon you just mentioned. Is there a resource which explains the meanings and uses of things like that?