❓ Что такое паттерн Flyweight и где он используется в Java?
Flyweight — это паттерн для экономии памяти путём переиспользования объектов с одинаковым состоянием.
Объект разделяется на intrinsic state (неизменяемое, общее) и extrinsic state (изменяемое, уникальное). Общее состояние хранится в одном экземпляре.
🔹 Примеры:
— String Pool (все одинаковые строки ссылаются на один объект)
— Integer.valueOf() кеширует числа от -128 до 127
— Boolean.TRUE и Boolean.FALSE
Паттерн эффективен, когда создаётся много объектов с повторяющимися данными.
🐸 Библиотека собеса по Java
#patterns
Post #1195
1.74K
- 👍 10
- 🔥 1
- 🤔 1