Mutator Methods
Introduction to Mutator Methods
- Mutator methods, also known as setters, are a type of method used in object-oriented programming.
- These methods modify or mutate the state of an object by changing the values of its instance variables.
- The term ‘mutator’ comes from the fact that these methods ‘mutate’ or change the state of an object.
Principle of Mutator Methods
- Mutator methods are used to control how the data of an object is modified or manipulated.
- They help in maintaining the integrity of the data or encapsulation, because the data can be validated before it’s modified.
- For example, if you have a
Circle
class with aradius
instance variable, you might use a mutator method to ensure that the radius is never set to a negative value.
Syntax of Mutator Methods
- The standard convention for naming a mutator method is
set
followed by the name of the variable. - Mutator methods typically have a
void
return type, as their purpose is to change the object’s state, not return a value. - Mutator methods should have one parameter, which is the new value for the instance variable.
- For example, a mutator method for the
radius
instance variable in theCircle
class might bepublic void setRadius(double newRadius) { this.radius = newRadius; }
.
Use of Mutator Methods
- Mutator methods are used when the state of an object needs to be changed after the object has been created.
- They can also be used for protecting the internal state of an object from invalid changes by checking the value before setting it.
- For example, before setting a new
radius
, a mutator method might include a condition to check that the incoming value is a positive number.
Example of Mutator Methods
Consider the following class Circle
:
public class Circle {
private double radius;
// Mutator method for radius
public void setRadius(double newRadius) {
if(newRadius > 0){
this.radius = newRadius;
}
else {
System.out.println("Error: Radius must be a positive number.");
}
}
}
In this example, setRadius
is a mutator method that changes the radius
of the Circle
object provided that the newRadius
is a positive number.
Importance of Mutator Methods
- Mutator methods contribute to encapsulation, one of the fundamental principles of object-oriented programming, by protecting instance variables from direct access.
- They allow for safer programming, as the new values may be checked for validity before they are used.
- Mutator methods provide flexibility by allowing the state of an object to be changed after it has been created.