Java에서 Autoboxing이란 무엇입니까? 예를 들어
게시 됨: 2023-01-28현대 세계에서 Java는 Android 애플리케이션 스크립팅을 위한 유명한 선택입니다. 또한 기계 학습 환경, 클라우드 애플리케이션 및 IOT 기술에서 광범위한 수요를 찾습니다. 개발자는 Java 프로그래밍의 최근 경향을 철저히 이해해야 합니다. 언어가 기업에서 확고하게 자리 잡고 있기 때문에 Java 개발자에게는 수익성 있는 전문가 전망이 보장됩니다. Java는 안드로이드 모바일 애플리케이션 시장뿐만 아니라 백엔드 시장에서도 선도적인 객체 지향 언어입니다.
목차
자바 오토박싱의 기초:
프로그램을 스크립팅하는 동안 기본 데이터 유형은 대부분의 프로그래밍 언어에서 사용됩니다. 그러나 Java와 같은 객체 지향 프로그래밍 언어에서는 기본 데이터 유형이 일부 시나리오에서 효과적이지 않으며 영역에서 부족합니다. 기본 데이터 유형의 한계를 극복하기 위해 래퍼가 사용됩니다. 이 현상을 오토박싱이라고 합니다. 후속 섹션에서 Java의 오토박싱에 대해 자세히 설명하겠습니다.
무료 기술 과정을 확인하여 경쟁에서 우위를 점하십시오.
인기 있는 소프트웨어 엔지니어링 과정 살펴보기
LJMU 및 IIITB의 컴퓨터 과학 석사 | Caltech CTME 사이버 보안 인증 프로그램 |
풀스택 개발 부트캠프 | 블록체인의 PG 프로그램 |
풀 스택 개발의 임원 PG 프로그램 | |
아래에서 모든 코스 보기 | |
소프트웨어 엔지니어링 과정 |
오토박싱 및 오토언박싱:
Autoboxing은 기본 값을 래퍼 클래스의 개체로 변환하는 프로세스입니다. 예를 들어, int 데이터 유형은 정수 클래스로 변환됩니다. autoboxing 기능은 기본 값이 다음과 같은 경우 Java 컴파일러에 의해 수행됩니다.
- 각 래퍼 클래스의 변수에 할당됩니다.
- 각 래퍼 클래스의 개체를 사용하는 메서드에 인수로 전달됩니다.
오토박싱은 오토박싱 기능의 역순입니다. 래퍼 유형 개체를 각각의 기본 값으로 변환하는 것을 언박싱이라고 합니다. int 데이터 유형으로 변환된 Integer 객체의 예를 살펴보겠습니다. Java 컴파일러는 래퍼 클래스 객체가 다음과 같은 경우 언박싱을 수행합니다.

- 각 프리미티브 유형의 변수를 할당했습니다.
- 해당 기본 유형의 값이 필요한 메소드에 인수로 전달됩니다.
세계 최고의 대학에서 소프트웨어 개발 과정을 온라인으로 배우십시오. PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 취득하여 경력을 빠르게 쌓으십시오.
주문형 소프트웨어 개발 기술
자바스크립트 강좌 | 핵심 Java 과정 | 데이터 구조 과정 |
Node.js 과정 | SQL 과정 | 전체 스택 개발 과정 |
NFT 과정 | DevOps 과정 | 빅데이터 강좌 |
React.js 강좌 | 사이버 보안 과정 | 클라우드 컴퓨팅 과정 |
데이터베이스 디자인 강좌 | 파이썬 과정 | 암호화폐 과정 |

자세한 오토박싱:
boxing과 autoboxing이라는 용어는 동일한 개념을 설명하기 위해 많은 경우 번갈아 사용됩니다. 그러나 두 용어 사이에는 미묘한 차이가 있습니다. '박싱'이라는 용어는 개체를 형성하기 위해 기본 데이터 유형을 래핑하는 것을 말합니다. 이 개념을 이해하기 위해 예를 들어 보겠습니다. 아래에 작성된 Java 코드 명령문을 고려하십시오.
int FirstNumber = 1;
이 명령문에서 'FirstNumber' 변수는 프리미티브인 int 데이터 유형입니다. 아래 문을 사용하여 객체로 변환할 수 있습니다.
정수 SecondNumber = new Integer(2);
위 명령문의 변수 SecondNumber는 기본 int 데이터 유형이 아닙니다. 대신 Integer 개체입니다. 기본 유형의 데이터를 객체로 변환하는 이 프로세스를 박싱이라고 합니다. 이 작업을 수행하는 가장 쉬운 방법은 int 데이터 유형의 단일 특성을 포함하는 클래스를 개발하는 것입니다. int 유형 값의 생성자가 클래스 속성에 할당됩니다. int 값을 조작하는 데 여러 가지 방법이 사용됩니다. Java의 래퍼 클래스를 사용하여 다른 데이터 유형을 개체로 변환할 수 있습니다.
Autoboxing은 명시적으로 언급하지 않고 컴파일러가 자동으로 수행하는 기능입니다.
MyList.add(Integer.valueOf(i));
이것은 컴파일러가 프로그램에 추가한 줄입니다.
위의 코드 문에서 valueOf()는 정적 메서드이기 때문에 메서드 valueOf()를 언급하기 전에 클래스 'Integer'의 이름을 지정합니다.

소프트웨어 개발과 관련된 인기 기사 읽기
Java에서 데이터 추상화를 구현하는 방법은 무엇입니까? | Java의 내부 클래스는 무엇입니까? | Java 식별자: 정의, 구문 및 예 |
예제를 통해 OOPS의 캡슐화 이해하기 | C의 명령줄 인수 설명 | 2022년 클라우드 컴퓨팅의 10대 기능 및 특성 |
Java의 다형성: 개념, 유형, 특성 및 예 | Java의 패키지 및 사용 방법? | 초보자를 위한 Git 자습서: 처음부터 Git 배우기 |
자바에서 언박싱이란?
기본 데이터 유형을 객체로 변환하는 과정을 이해했으므로 이제 boxing의 반대 기능을 수행하는 과정을 살펴보겠습니다. 앞서 언급한 바와 같이 언박싱은 래퍼 클래스 유형의 개체를 기본 데이터 유형으로 변환하는 프로세스를 나타냅니다.
언박싱 과정이 프로그램에서 명시적으로 언급되지 않고 컴파일러에 의해 자동으로 수행되는 경우를 자동 언박싱이라고 합니다. 자동 언박싱을 이해하기 위해 아래 예시를 살펴보겠습니다.
래퍼 클래스에 대한 추가 정보:
오토박싱 예제에서 변수 I는 int 데이터 유형이고 객체 Integer는 래퍼 클래스입니다. Java의 래퍼 클래스는 모든 기본 데이터 유형에 사용할 수 있습니다. 이러한 클래스를 사용하면 기본 데이터 유형에서 래퍼 클래스 유형의 해당 객체로 변수를 변환할 수 있습니다. 래퍼 클래스 메서드는 값 조작에 사용됩니다. 기본 데이터 유형과 각각의 래퍼 클래스는 아래 표에 요약되어 있습니다. 래퍼 클래스의 이름은 대문자로 시작합니다.
기본 데이터 유형 | 해당 래퍼 클래스 |
바이트 | 바이트 |
부울 | 부울 |
숯 | 성격 |
정수 | 정수 |
뜨다 | 뜨다 |
짧은 | 짧은 |
긴 | 긴 |
더블 | 더블 |
Java에서 Autoboxing 및 Auto unboxing의 장점:
- 오토박싱 및 언박싱 프로세스를 통해 프로그래머는 잘 구조화되고 쉽게 읽을 수 있는 코드를 스크립팅할 수 있습니다.
- 이 프로세스를 통해 사용자는 기본 데이터 유형과 래퍼 클래스의 개체 간에 번갈아 전환할 수 있습니다. 따라서 명시적 typecasting이 필요하지 않습니다.
Java, 풀스택 소프트웨어 개발에 대해 자세히 알아보려면 upGrad & IIIT-B의 소프트웨어 개발 총괄 PG 프로그램 – 작업 전문가를 위해 설계되었으며 500시간 이상의 엄격한 교육을 제공하는 풀스택 개발 전문화를 확인하십시오. , 9개 이상의 프로젝트 및 과제, IIIT-B 동문 상태, 실용적인 실습 캡스톤 프로젝트 및 최고 기업과의 취업 지원.
