class CarTest7 {
public static void main(String args[]) {
Car c = new Car("New York A45 636", 123.45);
System.out.println(c.getLicensePlate() + " is moving at " + c.getSpeed() +
" kilometers per hour.");
for (int i = 0; i < 15; i++) {
c.accelerate(10.0);
System.out.println(c.getLicensePlate() + " is moving at " + c.getSpeed()
+ " kilometers per hour.");
}
}
}
You no longer need to know about the fields licensePlate
, speed
and maxSpeed
. All you need to know is how to construct a new car and how to print it.
You may ask whether the setLicensePlate()
method is still needed since it's now set in a constructor.
The general answer to this question depends on the use to which the Car
class is to be put. The specific question is whether a car's
license plate may need to be changed after the Car
object is created.
Some classes may not change after they're created; or, if they do change, they'll represent a different object. The most common such class is String
. You cannot change a
string's data. You can only create a new String
object.
Such objects are called immutable.