Type:
- mutable
- immutable
Method:
- Creator
- Producer
- Observer
- Mutator
A creator implemented as a static method is often called a factory method.
Usually in test, we use obeserver to test the creator ,producer ,mutator method. And use creator, producer, mutator to test the observer method.
Defensive copying avoids rep exposure.