The singleton can be implemented by another way. In above example, all properties added to instance will be added as as static property to class. Hence they can be manipulated without creating instance of the class.
This can be more appropriate example of singleton class.