Good software design enforces encapsulation.
This is where
an object's instance variables are
visible only to the object's own methods.
Code outside of the object cannot directly access these variables.
This chapter discusses the
private visibility modifier
to do this.
Recall that software objects have identity, state, and behavior. They should behave like objects in the real world. The state of an object changes because of its own behavior or because of well-defined interactions with other objects.
Should a bank control who has access to your checking account?