Что такое автоупаковка в Java? С примерами

Опубликовано: 2023-01-28

В современном мире Java является известным выбором для написания сценариев приложений для Android. Он также пользуется большим спросом в среде машинного обучения, облачных приложениях и технологиях Интернета вещей. Разработчики должны иметь полное представление о последних тенденциях в программировании на Java. Java-разработчикам гарантированы прибыльные профессиональные перспективы, потому что язык прочно присутствует на предприятиях. Java является ведущим объектно-ориентированным языком не только на рынке мобильных приложений для Android, но и на рынке серверных приложений.

Оглавление

Основы автобоксинга в Java:

При написании программы в большинстве языков программирования используются примитивные типы данных. Однако в объектно-ориентированных языках программирования, таких как Java, примитивные типы данных неэффективны в некоторых сценариях, а в реальности они неэффективны. Для преодоления ограничений примитивных типов данных используются оболочки. Это явление называется автобоксингом. Давайте обсудим больше об автоупаковке в Java в следующих разделах.

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

Изучите наши популярные курсы по программной инженерии

Магистр компьютерных наук LJMU и IIITB Программа сертификатов кибербезопасности Caltech CTME
Учебный курс по полной разработке стека Программа PG в блокчейне
Программа Executive PG в Full Stack Development
Посмотреть все наши курсы ниже
Курсы по разработке программного обеспечения

Автобоксинг и автораспаковка:

Автоупаковка — это процесс преобразования примитивного значения в объект класса-оболочки. Например, тип данных int преобразуется в целочисленный класс. Функция автоупаковки выполняется компилятором Java, если значение примитива:

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

Автобоксинг — это обратная функция автобокса. Преобразование объекта типа-оболочки в его соответствующее примитивное значение называется распаковкой. Рассмотрим пример объекта Integer, преобразованного в тип данных int. Компилятор Java выполняет распаковку, когда объект класса-оболочки:

  • Присвоена переменная соответствующего примитивного типа.
  • Передается в качестве аргумента методу, которому требуется значение соответствующего примитивного типа.

Изучайте онлайн-курсы по разработке программного обеспечения в лучших университетах мира. Участвуйте в программах Executive PG, Advanced Certificate Programs или Master Programs, чтобы ускорить свою карьеру.

Востребованные навыки разработки программного обеспечения

Курсы JavaScript Базовые курсы Java Курсы по структурам данных
Курсы Node.js Курсы SQL Курсы разработки полного стека
Курсы НФТ Курсы DevOps Курсы по большим данным
Курсы React.js Курсы по кибербезопасности Курсы облачных вычислений
Курсы по проектированию баз данных Курсы Python Курсы по криптовалюте

Автобокс в деталях:

Термины бокс и автобокс во многих случаях используются попеременно для описания одной и той же концепции. Однако между этими двумя терминами есть тонкая разница. Термин «упаковка» относится к обертыванию примитивного типа данных для формирования объекта. Давайте рассмотрим пример, чтобы понять эту концепцию. Рассмотрим оператор кода Java, написанный ниже.

интервал первого числа = 1;

В этом операторе переменная FirstNumber имеет тип данных int, который является примитивным. Его можно преобразовать в объект, используя оператор ниже.

Целое второе число = новое целое число (2);

Переменная SecondNumber в приведенном выше выражении не имеет примитивного типа данных int. Вместо этого это целочисленный объект. Этот процесс преобразования примитивных типов данных в объект называется упаковкой. Самый простой способ выполнить эту задачу — разработать класс, содержащий один атрибут типа данных int. Атрибуту класса присваивается конструктор значения типа int. Несколько методов используются для управления значением int. Классы-оболочки в Java можно использовать для преобразования других типов данных в объект.

Автоупаковка — это функция, автоматически выполняемая компилятором без явного упоминания об этом.

MyList.add(Integer.valueOf(i));

Это строка, добавленная компилятором в нашу программу.

В приведенном выше операторе кода имя класса «Integer» указано до упоминания метода valueOf(), поскольку valueOf() является статическим методом.

Прочтите наши популярные статьи, связанные с разработкой программного обеспечения

Как реализовать абстракцию данных в Java? Что такое внутренний класс в Java? Идентификаторы Java: определение, синтаксис и примеры
Понимание инкапсуляции в ООП на примерах Объяснение аргументов командной строки в C 10 основных функций и характеристик облачных вычислений в 2022 году
Полиморфизм в Java: концепции, типы, характеристики и примеры Пакеты в Java и как их использовать? Учебник по Git для начинающих: Изучайте Git с нуля

Что такое распаковка в Java?

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

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

Подробнее о классах-оболочках:

В примере для автоупаковки переменная I имеет тип данных int, а объект Integer является классом-оболочкой. Класс-оболочка в Java доступен для всех примитивных типов данных. Эти классы позволяют пользователю преобразовать переменную из примитивного типа данных в соответствующий объект типа класса-оболочки. Методы класса-оболочки используются при манипулировании значениями. Примитивные типы данных и их соответствующие классы-оболочки приведены в таблице ниже. Обратите внимание, что имена классов-оболочек начинаются с заглавной буквы.

Примитивный тип данных

Соответствующий класс-оболочка

байт Байт
логический логический
уголь Персонаж
инт Целое число
плавать Плавать
Короткий Короткий
Длинный Длинный
двойной Двойной

Достоинства автоупаковки и автоматической распаковки в Java:

  • Процесс автоматической упаковки и распаковки позволяет программистам писать хорошо структурированный и легко читаемый код.
  • Этот процесс также позволяет пользователям попеременно переключаться между примитивными типами данных и объектами класса-оболочки. Следовательно, явное приведение типов не требуется.

Если вам интересно узнать больше о Java, разработке программного обеспечения с полным стеком, ознакомьтесь с программой Executive PG upGrad и IIIT-B по разработке программного обеспечения — специализация в разработке полного стека, которая предназначена для работающих профессионалов и предлагает более 500 часов интенсивного обучения. , более 9 проектов и заданий, статус выпускника IIIT-B, практические практические проекты и помощь в трудоустройстве в ведущих фирмах.

Хотите поделиться этой статьей?

Подготовьтесь к карьере будущего

Подать заявку на получение степени магистра в области разработки программного обеспечения