Home Segments Top Top Previous Next

224: Mainline

Analogously, you do not need to assign an instance-variable value directly. Instead, you can assign an instance-variable value indirectly by defining an instance method that does the actual value assigning.

In general a setter is a method that inserts information into an instance. Setters are also known as mutators.

In the following Attraction class definition, for example, a setter named setMinutes assigns a value to the minutes instance variable:

public class Attraction {
 public int minutes;
 public Attraction () {minutes = 75;}
 public Attraction (int m) {minutes = m;}
 // Define getter:
 public int getMinutes () {
  return minutes;
 }
 // Define setter:
 public void setMinutes (int m) {       
  minutes = m;                          
 }                                      
} 

With setMinutes defined, you have another way to assign a value to the minutes instance variable of a particular attraction, x:

x.setMinutes(4)