이 글의 내용은 Java에서 패키징 클래스가 무엇인지에 관한 것입니다. Java 패키징 클래스의 응용 시나리오에 대한 소개에는 특정 참고 가치가 있습니다. 도움이 필요한 친구가 참고할 수 있기를 바랍니다.
오늘은 Java 패키징 클래스의 유래와 자동 boxing 및 unboxing의 개념과 원리에 대해 이야기하겠습니다.
Java 디자인은 원래 8개의 기본 데이터 유형과 8개의 해당 패키징 데이터 유형을 제공했습니다. 우리는 Java가 객체지향 프로그래밍을 위한 고급 언어라는 것을 알고 있으므로 객체지향 프로그래밍에서 기본 데이터 유형을 제공할 수 없는 문제를 해결하기 위해 래퍼 유형을 정확하게 제공합니다.
기본 데이터 유형과 해당 패키징 유형은 다음과 같습니다.
기본 데이터 유형 | 포장 유형 |
---|---|
byte | Byte |
boolean | Boolean |
short | 짧은 |
문자 | 문자 |
int | Integer |
long | Long |
float | Float |
double | Double |
다음은 패키징 유형의 상속 구조 다이어그램입니다.
위의 차트를 통해 기본 유형과 포장 유형을 포괄적으로 이해할 수 있습니다.
1. 컬렉션 클래스 제네릭은 패키징 클래스일 수 있습니다.
// 编译报错 List<int> list1 = new ArrayList<>(); // 正常 List<Integer> list2 = new ArrayList<>();
2. 기본 데이터 유형의 멤버 변수는 기본값을 가질 수 없습니다. , 위 코드에서 상태의 기본값은 0입니다. 정의에서 0이 실패를 나타내는 경우 문제가 있습니다. 이 경우 래퍼 클래스 Integer만 사용할 수 있으므로 기본값은 없습니다. 기본값 효과.
3. 메소드 매개변수는 null 값 정의를 허용합니다.
private int status;
Autoboxing
Autoboxing은 기본 데이터 유형을 패키징 유형으로 자동 변환하는 것을 의미합니다. Java 5 이전에는 기본 데이터 유형을 패키징 유형으로 변환하는 경우에만 이 작업을 수행할 수 있었습니다.
private static void test1(int status){ System.out.println(status); }
자동 언박싱
자동 언박싱은 자동 패키징과 달리 포장 유형을 기본 데이터 유형으로 자동 변환하여 설치 및 개봉 시 이해하기 쉽습니다.
Integer i1 = new Integer(8); Integer i2 = Integer.valueOf(8); // 自动装箱 Integer i3 = 8;
위 내용은 Java의 래퍼 클래스란 무엇입니까? Java 패키징 클래스의 애플리케이션 시나리오 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!