Answer
Ensures one instance of a class exists.
Implement using eager loading, lazy loading, double-checked locking, or enum.
Provides global access to the instance.
Implement using eager loading, lazy loading, double-checked locking, or enum.
Provides global access to the instance.