Writing a singleton using enum is very simple and effective without worrying too much on concurrency and other stuff.