찾다
JavaJava시작하기자바의 강한 참조와 약한 참조 소개

자바의 강한 참조와 약한 참조 소개

Apr 10, 2020 pm 03:50 PM
java약한 참조

자바의 강한 참조와 약한 참조 소개

1. 강력한 참조

일반적으로 새 객체를 생성할 때 이는 강력한 참조입니다. 예를 들어

Object obj = new Object();

메모리가 부족하더라도 JVM은 이러한 객체를 재활용하는 것보다 OutOfMemory 오류를 발생시킵니다. .

(추천 비디오 튜토리얼: java 비디오 튜토리얼)

2. 소프트 참조

객체에 소프트 참조만 있는 경우 메모리 공간이 충분하며 메모리가 부족하면 가비지 수집기가 이를 재활용하지 않습니다. 공간, 이러한 개체의 메모리가 회수됩니다.

SoftReference<String> softRef=new SoftReference<String>(str);     // 软引用

용도:

소프트 참조에는 실제로 브라우저의 뒤로 버튼과 같은 중요한 응용 프로그램이 있습니다. 뒤로 버튼을 누르면 돌아갈 때 표시되는 웹페이지의 콘텐츠를 다시 요청하게 되나요, 아니면 캐시에서 가져오나요? 이는 구체적인 구현 전략에 따라 다릅니다.

(1) 탐색이 끝난 후 웹페이지의 콘텐츠가 재활용되는 경우 이전에 탐색한 페이지를 보기 위해 뒤로를 누르면 웹페이지를 다시 작성해야 합니다.

(2) 탐색한 웹 페이지를 메모리에 저장하면 많은 메모리 낭비가 발생하고 심지어 메모리 오버플로도 발생합니다.

다음 코드:

Browser prev = new Browser();               // 获取页面进行浏览
SoftReference sr = new SoftReference(prev); // 浏览完毕后置为软引用        
if(sr.get()!=null){ 
    rev = (Browser) sr.get();           // 还没有被回收器回收,直接获取
}else{
    prev = new Browser();               // 由于内存吃紧,所以对软引用的对象回收了
    sr = new SoftReference(prev);       // 重新构建
}

추천 튜토리얼: java 빠른 시작

위 내용은 자바의 강한 참조와 약한 참조 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.