Чтобы продолжить работу над примером из Википедии, который цитировал Брайан ...
Обычно, если вы хотите кэшировать некоторые объекты (например, CoffeeFlavors) и распределить их между несколькими мухами (CoffeeOrders),тогда вы сделаете их статически доступными.Но это совсем не обязательно. Важной частью является то, что CoffeeOrders получают общие объекты при их создании.
Если Заказы всегда создаются только одним синглтоном, например, CoffeeOrderFactory, тогдаФабрика может хранить нестатический кэш ароматов.Как бы вы этого ни делали, ваша цель - заставить все Ордена во всей системе использовать один и тот же точный набор объектов Flavor.Но в конце концов, если вы хотите избежать создания множества экземпляров CoffeeFlavor, то его обычно нужно создавать статически, просто чтобы убедиться, что есть только один кеш.
Получить?