Back to questions
Junior — Middle
63
В каких случаях применяют паттерн Wrapper в программировании?
Answer from AI
sobes.tech AI
Паттерн Wrapper (обёртка) применяется, когда нужно изменить или расширить поведение существующего объекта без изменения его кода. Это удобно для:
- Добавления дополнительной логики (например, логирование, проверка прав) вокруг вызовов методов.
- Приведения интерфейса объекта к другому виду (адаптация).
- Контроля доступа к объекту.
Пример в Java: обёртка вокруг InputStream для подсчёта количества прочитанных байт.
class CountingInputStream extends InputStream {
private InputStream wrapped;
private int count = 0;
public CountingInputStream(InputStream wrapped) {
this.wrapped = wrapped;
}
@Override
public int read() throws IOException {
int b = wrapped.read();
if (b != -1) count++;
return b;
}
public int getCount() {
return count;
}
}