Классы оболочки в Java

Facebooktwittergoogle_plustumblrFacebooktwittergoogle_plustumblr

Данная статья:

  • написана командой Vertex Academy. Надеемся, что она Вам будет полезна. Приятного прочтения!
  • это одна из статей из нашего "Самоучителя по Java"

Что такое классы оболочки?

Раньше Вы знакомились с примитивными типами данных (такими, как int, short, boolean и т.д.):

Variables Java_Vertex Academy

Тем не менее, Вы знаете, что Java - объектно-ориентированный язык программирования. Это значит, что в ней "все, что можно, представлено в виде объектов".

Поэтому, у примитивных типов есть объекты-аналоги - так называемые "классы оболочки", или "wrapper" (с англ. "обертка, упаковка"):

wrap_1

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

О названиях

Имена классов нетрудно запомнить - они повторяют имена примитивных типов данных:

wrap_2

Обратите внимание - все классы оболочки пишутся с большой буквы:

wrap_3

Зачем так усложнять

Но зачем они нужны? Если есть обычный int, short, ..., зачем нам Short и Integer? Или, может, оставить только классы оболочки, и не пользоваться примитивами, раз у них функций больше?

i-in3cvejg-evan-dennis

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

Например, обычный int занимает меньше места, и если нет необходимости проводить над ним особые операции, Ваш компьютер будет работать быстрее.

В свою очередь, с помощью класса-оболочки Integer можно выполнять специальные операции - например, перевести текст в число (с помощью метода .parseInt() для Integer-а ). Если попробовать сделать это с помощью кода самому придется изрядно повозиться.

Integer и int можно сравнить с компьютером и записной книжкой:

stocksnap_2ci87djpdzkopiya-stocksnap_0axtvi7jb2

Компьютер, безусловно, может больше, чем блокнот - но Вы не будете целый день носить с собой три килограмма для того, чтобы сделать несколько заметок?

Кроме того, есть ситуации, когда нельзя использовать объекты, или наоборот, когда можно использовать только объекты.


Метод .parseInt()

Иногда в объекте типа String содержится число, и Вам нужно с ним работать дальше - умножать, делить, в степень возводить. Но нельзя! Строка же. Что делать?

Нам видно, что 11 - это число, но выдает ошибку:

 

snimok-ekrana-2016-12-01-v-03-00-40

Можно исправить это с помощью .parseInt() (для int; для long будет .parseLong(), и так далее). Он объявляется так:

wrap_5

Название класса оболочки зависит от типа примитива, которому присваивается значение:

wrap_6

Пример:

Теперь все работает и на экран выводится число 11:

snimok-ekrana-2016-12-01-v-03-08-19

Вот Вы и знаете, что такое классы оболочки и как их использовать!


Надеемся, что наша статья была Вам полезна. Также есть возможность записаться на наши курсы по Java в Киеве. Обучаем с нуля. Детальную информацию Вы можете найти у нас на сайте.

Facebooktwittergoogle_plustumblrFacebooktwittergoogle_plustumblr

Facebooktwittergoogle_plustumblrFacebooktwittergoogle_plustumblr
Самоучители--узнать детальнее--