1. 정의:
(추천 학습: java 입문 프로그램)
Java는 객체 지향 프로그래밍 언어이지만 Java의 8가지 기본 데이터 유형은 객체 지향이 아닙니다. 이러한 단점을 용이하게 하고 해결하기 위해 클래스를 설계할 때 각각의 기본 데이터 유형을 나타내도록 해당 클래스를 설계한다. 이렇게 8가지 기본 데이터 유형에 해당하는 클래스를 합쳐서 래퍼 클래스(Wrapper Class)라고 하며, 래퍼 클래스는 다음과 같다. 클래스는 가방 안의 java.lang에 있습니다.
2. 클래스 패키징의 목적
Java는 사용 편의성을 위해 8가지 기본 데이터 유형을 캡슐화합니다. Integer 및 Character 클래스를 제외하고 나머지 6개 클래스의 클래스 이름은 기본 데이터 유형과 동일합니다. long as the class 이름의 첫 글자는 대문자로 표기할 수 있습니다.
boolean —> Boolean
char —> 문자
byte —> Byte
short —> Short
long —> Long
int —> Integer
float —> Float
double —>
패키징 클래스에는 두 가지 주요 용도가 있습니다.
a 객체와 관련된 작업을 용이하게 하기 위해 기본 데이터 유형에 해당하는 클래스로 존재합니다.
b. 최대값, 최소값 등 각 기본 데이터 유형의 관련 속성과 관련 작업 방법이 포함되어 있습니다.
3. 패키징 클래스의 실제 사용(int 및 정수를 예로 사용)
1. int와 정수 클래스 간의 변환
실제 변환 중에는 Integer 클래스의 생성자와 Integer 클래스 내부의 intValue를 사용합니다. 메소드는 이러한 유형 간에 변환합니다.
// int n=5; Integer n1=new Integer(n); System.out.println("int类型转换为integer类:"+n1); // Integer i=new Integer(50); int i1 = i.intValue(); System.out.println("integer类转换为int类型:"+i1);
2. Integer 클래스 내에서 일반적으로 사용되는 메소드
Integer 클래스의 주요 메소드는 다음과 같습니다:parseInt 메소드 및 toString 메소드.
//parseInt方法: 数字字符串类型转成int类型 String ss="123"; int ii = Integer.parseInt(ss); System.out.println("字符类型转成整型:"+ii); //toString方法:int类型转成数字字符串类型 int ii2=123; String ss2 = Integer.toString(ii2); System.out.println("int类型转成数字字符串类型:"+ss);
JDK는 버전 1.5부터 자동 언박싱 구문을 도입했습니다. 즉, 기본 데이터 유형과 해당 패키징 클래스를 변환할 때 시스템이 자동으로 이를 수행하므로 프로그래머의 코드 작성이 크게 쉬워집니다.
(추천 동영상 튜토리얼: java 동영상 튜토리얼)
Autoboxing: Java의 객체 지향 사고를 따르기 위해 기본 데이터 유형을 객체 유형으로 캡슐화합니다.
자동 언박싱: 개체를 기본 데이터 유형으로 다시 변환합니다.
//5是基本数据类型,通过自动装箱变成对象类型。 //编译器执行了Integer iii = Integer.valueOf(5) Integer iii=5; //自动拆箱,实际上执行了 int iii2 = iii.intValue() int iii2=iii; System.out.println(iii2);
설명: Integer iii=5; 이는 컴파일러가 Integer iii = Integer.valueOf(5) 작업을 수행하는 것과 동일합니다.
이 메소드는 Integer 객체를 반환하는데, 반환하기 전에 i의 현재 값이 [-128,127] 범위에 있는지, 이 객체가 IntegerCache에 존재하는지 여부를 판단하는 것으로 간주됩니다. 참조가 직접 반환됩니다. 그렇지 않으면 새 개체를 만듭니다.
3. 패키징 클래스의 캐시 값
각 패키징 클래스의 캐시 값 범위:
boolean:true和false byte:-128~127 char:0~127 short:-128~127 int:-128~127 long:-128~127
특별 참고 사항: float 및 double에 대한 캐시가 없습니다.
위 값을 박싱할 때 (예: Character c1=127; 또는 Integer i= Integer.valueOf(1); 이것은 작동하지 않습니다: Integer i2=new Integer(1); 하나의 Object가 나옵니다.) 새 객체를 생성하는 대신 캐시에 있는 객체를 사용하여 범위를 초과하는 경우 새 객체를 생성해야 합니다.
위 내용은 Java 패키징 클래스에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!