THIS Section concerns creating and destroying objects:
- When and how to create them,
- When and how to avoid creating them,
- How to ensure they are destroyed in a timely manner, and
- How to manage any cleanup actions that must precede their destruction.

Following Rules are described
- Consider static factory methods instead of constructors
- Consider a builder when faced with many constructor parameters
- Enforce the singleton property with a private constructor an enum type
- Enforce non-instantiability with a private constructor
- Prefer dependency injection to hard-wiring resources
- Avoid creating unnecessary objects
- Eliminate obsolete object references
- Avoid finalizers and cleaners
- Prefer try-with-resources to try-finally