Что такое класс-обёртка? - PullRequest
209 голосов
/ 20 мая 2009

Что такое класс-обёртка?
Чем полезны такие занятия?

Ответы [ 17 ]

3 голосов
/ 01 мая 2012

Java-программирование предоставляет класс-оболочку для каждого примитивного типа данных, чтобы преобразовать примитивные типы данных в соответствующий объект класса-оболочки.

3 голосов
/ 04 июля 2011

Класс Wrapper - это оболочка вокруг примитивного типа данных. Он представляет примитивные типы данных в соответствующих экземплярах классов, например, логический тип данных может быть представлен как экземпляр логического класса. Все примитивные классы-обертки в Java являются неизменными, т. Е. После присвоения значения экземпляру класса-обертки дальнейшее изменение невозможно.

1 голос
/ 18 ноября 2014

Сделать благосостояние класса-обертки - нелегкая работа. Понять класс-оболочку, как он спроектирован другими, тоже нелегкая задача. Потому что это идея, а не код. Только когда вы понимаете идею, вы можете понять обертку.

0 голосов
/ 14 декабря 2015

Класс-обертка - это класс, который служит единственной цели - удерживать что-то и добавлять к нему некоторую функциональность. В Java, поскольку примитивы (например, int, float, chars ...) не являются объектами, поэтому, если вы хотите обращаться с ними как с единым целым, вы должны использовать класс-оболочку. Предположим, вы хотите создать вектор целых, проблема в том, что вектор содержит только объекты, а не примитивы. Итак, что вы будете делать, это поместить все целые числа в упаковщик Integer и использовать его. Пример:

int number = 5;
Integer numberWrapped = new Integer(number);
//now you have the int in an object.
//and this is how to access the int value that is being wrapped.
int again = numberWrapped.intValue();
0 голосов
/ 20 ноября 2015

В настоящее время я использовал класс-оболочку для своего проекта и основные преимущества, которые я получаю (только одно преимущество, чтобы расширить описание темы):

Обработка исключений: у моего основного класса, который оборачивает другой класс, есть методы, которые выдают исключения, если таковые возникают, поэтому я создал класс-оболочку, который обрабатывает исключения и немедленно регистрирует их. Итак, в моей основной области нет обработки исключений. Я просто вызываю метод и что-то делаю.

Простота использования: я могу легко инициировать объект. Обычно начальная фаза состоит из множества шагов.

Читаемость кода: когда другой код откроет мой код, код будет казаться очень понятным и простым в управлении.

Скрытие деталей: если вы генерируете класс, который будет использовать другой программист, вы можете обернуть детали, такие как «обработка ошибок, обработка исключений, регистрация сообщений и т. Д.», Чтобы программист не был приходится справляться с хаосом, просто использует методы.

0 голосов
/ 03 ноября 2015

Классы Wrapper появились для того, чтобы удовлетворить базовую потребность программистов - то есть использовать примитивные значения везде, где разрешены только объекты. Как следует из их названия, классы-обертки оборачиваются вокруг примитивного значения и содержат значение в объекте. Таким образом, во всех тех местах, где примитивы запрещены - например, обобщенные элементы, ключи hashmap, Arraylists и т. Д. - программисты теперь имеют возможность предоставлять эти примитивные значения в качестве соответствующих им типов оболочки.

Кроме того, эти типы оболочек имеют ряд служебных методов для преобразования из примитивного типа в соответствующие типы оболочек и обратно, а также из строк в типы оболочек и обратно.

Я написал подробную статью о классах-оболочках в своем блоге, в которой подробно объясняется концепция типов-оболочек - http://www.javabrahman.com/corejava/java-wrapper-classes-tutorial-with-examples/ (Раскрытие - этот блог принадлежит мне)

0 голосов
/ 27 сентября 2011

Обертка - это класс, который используется для связи между двумя разными приложениями между разными платформами.

...