Most of interviewers asking the question to java and android developers. It's not strange. We need to explore this.
- Create the only one instance in the class.
- Provide a global point of access to the object
- Allow multiple instances in the future without affecting a singleton class's client