Junior — Middle
Обяснете концепцията за клас-обвивка и нейното предназначение в обектно-ориентираното програмиране.
sobes.tech AI
Отговор от 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;
}
}
Така, класът-обвивка разширява функционалността или адаптира поведението на оригиналния обект.