자바 상량탱크

1517 단어 java상량지
java 상량 탱크 기술
자바에서 상량탱크 기술이 말하는 통속점은 바로 자바 단계의 캐시 기술로 대상을 신속하게 만들 수 있다.대상이 필요할 때 풀에서 가져옵니다. (풀에 없으면 하나를 만들고 풀에 넣습니다.) 다음에 같은 변수가 필요할 때 다시 만들지 않아도 됩니다. 공간을 절약할 수 있습니다.
java 8가지 기본 유형의 포장류와 대상 탱크
java의 기본 유형인 패키지 클래스, 그 중에서 Byte, Boolean, Short, Character, Integer, Long은 상량 탱크 기술을 실현했다(Bolean을 제외하고는 128보다 작은 값에만 지원됨)
예를 들어, Integer 객체

Integer i1 = 100;
Integer i2 = 100;
//  , , 
// Integer i1 = Integer.valueOf(100);
// Integer i2 = Integer.valueOf(100);
System.out.println(i1 == i2);

Integer i3 = 128;
Integer i4 = 128;
System.out.println(i3 == i4);
실행 결과:

true
false
이유는 Integer 객체의 valueOf() 소스 코드를 살펴보겠습니다.

public static Integer valueOf(int i) {
   assert IntegerCache.high >= 127;
   if (i >= IntegerCache.low && i <= IntegerCache.high)
     return IntegerCache.cache[i + (-IntegerCache.low)];

   //  Integer    
   return new Integer(i);
}
-128~127의 Integer 객체는 IntegerCache에 캐시를 가져오고 상수 풀 기술을 사용합니다.

private static class IntegerCache {  ...  static final Integer cache[];
// IntegerCache cache final , , }
String 클래스의 상수 풀
String 유형의 상량 탱크는 비교적 특수하다. String 유형의 상량 탱크는 jdk7에서javaheap에 놓여 있다.사용 방법은 다음과 같습니다.
• String s ='abc'와 같은 글자 양을 직접 사용합니다.
• String을 사용합니다.intern();
이상의 이 평론 자바 상량지는 바로 편집자가 여러분께 공유한 모든 내용입니다. 여러분께 참고가 되고 저희를 많이 사랑해 주시기 바랍니다.

좋은 웹페이지 즐겨찾기