Sobes.tech
Back to questions
Junior — Middle
63

Объясните концепцию класса-обёртки и его назначение в объектно-ориентированном программировании.

Answer from AI

sobes.tech AI

Класс-обёртка (wrapper class) в объектно-ориентированном программировании — это класс, который "оборачивает" другой объект или примитивный тип данных, предоставляя дополнительный функционал или интерфейс. Основные назначения класса-обёртки:

  • Инкапсуляция примитивных типов в объекты (например, в Java есть классы-обёртки для примитивов: Integer, Double и т.д.).
  • Добавление дополнительной логики при доступе к данным или методам.
  • Обеспечение совместимости с API, которые требуют объекты вместо примитивов.
  • Управление жизненным циклом или состоянием обёрнутого объекта.

Пример: класс-обёртка для строки, который добавляет метод подсчёта слов.

public class StringWrapper {
    private String str;

    public StringWrapper(String str) {
        this.str = str;
    }

    public int wordCount() {
        if (str == null || str.isEmpty()) return 0;
        return str.trim().split("\\s+").length;
    }

    public String get() {
        return str;
    }
}

Таким образом, класс-обёртка расширяет функциональность или адаптирует поведение исходного объекта.