The classes you've encountered up till now have mostly had a single method, main()
. However, in general classes can have many different methods that do many different things. For instance the Car
class might have a method to make the car go as fast as it can.
For example,
class Car {
String licensePlate = ""; // e.g. "New York 543 A23"
double speed = 0.0; // in kilometers per hour
double maxSpeed; = 120.0; // in kilometers per hour
// accelerate to maximum speed
// put the pedal to the metal
void floorIt() {
this.speed = this.maxSpeed;
}
}
The fields are the same as before, but now there's also a method called floorIt()
. It begins with the Java keyword void
which is the return type of the method. Every method must have a return type which will either be void
or some data type like int
, byte
, float
, or String
. The return type says what kind of the value will be sent back to the calling method when all calculations inside the method are finished. If the return type is int
, for example, you can use the method anywhere you use an int
constant. If the return type is void
then no value will be returned.
floorIt
is the name of this method. The name is followed by two empty parentheses. Any arguments passed to the method would be passed between the parentheses, but this method has no arguments. Finally an opening brace ( {
) begins the body of the method.
There is one statement inside the method
this.speed = this.maxSpeed;
Notice that within the Car
class
the field names are prefixed with the
keyword this
to indicate that I'm referring
to fields in the current object.
Finally the floorIt()
method is closed with a }
and the class is closed with another }
.
Question: what are some other methods this class might need? Or, another way of
putting it, what might you want to do with a Car
object?