> Java > java지도 시간 > Java의 정수 래퍼 개체가 -128과 127 사이의 인스턴스를 공유하는 이유는 무엇입니까?

Java의 정수 래퍼 개체가 -128과 127 사이의 인스턴스를 공유하는 이유는 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-11-27 06:36:22
원래의
699명이 탐색했습니다.

Why Do Java's Integer Wrapper Objects Share Instances Between -128 and 127?

정수 래퍼 객체: 특정 값 범위 내의 공유 인스턴스

Java의 정수 래퍼 객체인 Integer는 다음을 공유하는 독특한 동작을 가지고 있습니다. 특정 범위 내의 값에 대해 동일한 인스턴스입니다. 효과적인 객체 관리를 위해서는 이러한 특성을 이해하는 것이 필수적입니다.

객체가 -128 ~ 127 범위 내에서 인스턴스를 공유하는 이유

JLS(Java 언어 사양)에 따르면, -128~127 범위의 정수 래퍼 개체는 동일한 인스턴스를 공유합니다. 이 범위 내에서 동일한 값을 갖는 두 개의 박싱 변환은 항상 동일한 참조를 반환합니다(object1 == object2는 true로 평가됨).

이 동작은 실용성과 효율성이라는 두 가지 요소에 의해 결정됩니다. 일반적으로 사용되는 값을 캐싱하면 특히 리소스가 제한된 장치에서 성능이 최적화됩니다. 또한 자주 발생하는 값에 대해 예측 가능한 개체 조작이 가능합니다.

지정된 범위를 벗어난 변형

그러나 다음과 같이 -128~127 범위를 벗어나는 값의 경우 예제에서 볼 수 있듯이 Integer 객체의 다양한 인스턴스가 생성됩니다. 이러한 근본적인 구별은 인스턴스 공유가 발생하는 특정 범위를 이해하는 것이 중요함을 강조합니다.

위 내용은 Java의 정수 래퍼 개체가 -128과 127 사이의 인스턴스를 공유하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿