По ссылкам с паттерном разобрался. Что делать то же легко понял, легко реализовал, правда со 2ой попытки, забыл в кэш засунуть вновь созданный экземпляр класса. Остался вопрос, зачем? Зачем я это сделал? Для чего, в каки случаях используется этот паттерн?