>  기사  >  Java  >  Java 배열에서 메모리를 재활용하는 방법

Java 배열에서 메모리를 재활용하는 방법

WBOY
WBOY앞으로
2023-05-02 18:46:07799검색

1. 메모리 분석

배열 참조 변수는 참조일 뿐입니다. 이 참조 변수는 참조가 유효한 메모리를 가리키는 경우에만 배열 변수를 통해 액세스할 수 있습니다.

모든 참조 변수와 마찬가지로 참조 변수는 실제 객체에 액세스하는 기본적인 방법입니다. 즉, 프로그램에서 배열 객체 자체에 접근하려면 이 배열의 참조 변수를 통해서만 접근할 수 있습니다.

실제 배열 개체는 힙 메모리에 저장되며, 배열 개체를 참조하는 배열 참조 변수가 로컬 변수인 경우 스택 메모리에 저장됩니다.

2. 예

힙 메모리의 배열에 더 이상 자신을 가리키는 참조 변수가 없으면 이 배열은 가비지가 되고 점유된 메모리는 시스템의 가비지 수집 메커니즘에 의해 회수됩니다. 따라서 가비지 수집 메커니즘을 사용하여 배열이 차지한 메모리 공간을 회수하려면 이 배열 변수를 null에 할당하면 배열 참조 변수와 실제 배열 간의 참조 관계가 끊어져 실제 배열을 만들 수 있습니다. 쓰레기가 되다 .

상호 호환성을 전제로 배열 변수가 다른 실제 배열을 가리키는 것이 허용됩니다. 이 작업은 배열의 길이가 가변적인 것처럼 보이게 합니다. 아래:

public class ArrayInRam {
   
   
   
 
public static void main(String[] args) {
   
   
   
//静态初始化a
int []a= {
   
   
   5,7,20};
//动态初始化b
int []b=new int[4];
//输出b的长度
System.out.println(b.length);
//循环遍历输出a
for(int aa:a) {
   
   
   
System.out.print(aa+"\t");
}
//b引用a
b=a;
//输出b的长度
System.out.println("\n"+b.length);
 
}
 
}

위 내용은 Java 배열에서 메모리를 재활용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제