|
廣東盛網(wǎng)科技有限公司
| 聯(lián)系人:盛網(wǎng)科技
先生 (網(wǎng)絡(luò)推廣) |
| 電 話:4000900901 |
手 機(jī):13924367540  |
 |
|
 |
|
| 服務(wù)器租用 廣州,Java虛擬機(jī)詳解 |
聲明:本文只是做一個(gè)總結(jié),有關(guān)jvm的詳細(xì)知識可以參考本人之前的系列文章,尤其是那篇:Java虛擬機(jī)詳解04—-GC算法和種類。那篇文章和本文是面試時(shí)的重點(diǎn)。
面試必問關(guān)鍵詞:JVM垃圾回收、類加載機(jī)制。
一、Java引用的狀態(tài):
強(qiáng)引用:
用的最廣。我們平時(shí)寫代碼時(shí),new一個(gè)Object存放在堆內(nèi)存,然后用一個(gè)引用指向它,這就是強(qiáng)引用。
* 如果一個(gè)對象具有強(qiáng)引用,那垃圾回收器絕不會回收它*。當(dāng)內(nèi)存空間不足,Java虛擬機(jī)寧愿拋出OutOfMemoryError錯(cuò)誤,使程序異常終止,也不會靠隨意回收具有強(qiáng)引用的對象來解決內(nèi)存不足的問題。
軟引用:
如果一個(gè)對象只具有軟引用,則內(nèi)存空間足夠時(shí),垃圾回收器就不會回收它;如果內(nèi)存空間不足了,就會回收這些對象的內(nèi)存。(備注:如果內(nèi)存不足,隨時(shí)有可能被回收。)
只要垃圾回收器沒有回收它,該對象就可以被程序使用。軟引用可用來實(shí)現(xiàn)內(nèi)存敏感的高速緩存。
弱引用:
弱引用與軟引用的區(qū)別在于:只具有弱引用的對象擁有更短暫的生命周期。
* 每次執(zhí)行GC的時(shí)候,一旦發(fā)現(xiàn)了只具有弱引用的對象,不管當(dāng)前內(nèi)存空間足夠與否,都會回收它的內(nèi)存。不過,由于垃圾回收器是一個(gè)優(yōu)先級很低的線程,因此不一定會很快發(fā)現(xiàn)那些只具有弱引用的對象*。
虛引用:
“虛引用”顧名思義,就是形同虛設(shè),與其他幾種引用都不同,虛引用并不會決定對象的生命周期。如果一個(gè)對象僅持有虛引用,那么它就和沒有任何引用一樣,在任何時(shí)候都可能被垃圾回收器回收。
虛引用主要用來跟蹤對象被垃圾回收器回收的活動。
二、Java中的內(nèi)存劃分:
Java程序在運(yùn)行時(shí),需要在內(nèi)存中的分配空間。為了提高運(yùn)算效率,就對數(shù)據(jù)進(jìn)行了不同空間的劃分,因?yàn)槊恳黄瑓^(qū)域都有特定的處理數(shù)據(jù)方式和內(nèi)存管理方式。
上面這張圖就是jvm運(yùn)行時(shí)的狀態(tài)。具體劃分為如下5個(gè)內(nèi)存空間:(非常重要)
- 程序計(jì)數(shù)器:保證線程切換后能恢復(fù)到原來的執(zhí)行位置
- 虛擬機(jī)棧:(棧內(nèi)存)為虛擬機(jī)執(zhí)行java方法服務(wù):方法被調(diào)用時(shí)創(chuàng)建棧幀–>局部變量表->局部變量、對象引用
- 本地方法棧:為虛擬機(jī)執(zhí)使用到的Native方法服務(wù)
- 堆內(nèi)存:存放所有new出來的東西
- 方法區(qū):存儲被虛擬機(jī)加載的類信息、常量、靜態(tài)常量、靜態(tài)方法等。
- 運(yùn)行時(shí)常量池(方法區(qū)的一部分)
GC對它們的回收:
內(nèi)存區(qū)域中的程序計(jì)數(shù)器、虛擬機(jī)棧、本地方法棧這3個(gè) |
 |
| |
|
|
 |
|
| 其它產(chǎn)品信息 |
- ·租用服務(wù)器空間,HTTPS要比HTTP更消耗服
- ·共享帶寬和獨(dú)享帶寬有什么區(qū)別
- ·河南網(wǎng)站服務(wù)器租用,HTTPS和HTTP的區(qū)別
- ·雙線穩(wěn)定服務(wù)器租用,vpn是什么,有什么
- ·服務(wù)器遭受攻擊后的處理過程,云計(jì)算 服
- ·遇到問題時(shí),需要找IDC服務(wù)商嗎?
- ·服務(wù)器租用 廣州,Java虛擬機(jī)詳解
- ·打不死的高防服務(wù)器,大連服務(wù)器租用哪
- ·游戲服務(wù)器租用要注意些什么
- ·地方游戲運(yùn)營商該如何正確選擇高防服務(wù)
- ·網(wǎng)站更換服務(wù)器需要注意什么
- ·如何計(jì)算該租用多少帶寬
- ·服務(wù)器機(jī)柜的常規(guī)尺寸及承重
- ·嘉洲服務(wù)器租用,5大數(shù)據(jù)泄露事件
- ·游戲服務(wù)器該選品牌機(jī)還是兼容機(jī)
- ·獨(dú)立高防服務(wù)器租用,dns服務(wù)器異常怎么
- ·公司網(wǎng)站服務(wù)器租用,什么是光纖配線架
- ·傳奇服務(wù)器租用,一個(gè)IDC服務(wù)商提供什么
- ·服務(wù)器租用防騙識別技巧
- ·什么樣的網(wǎng)站適合選擇虛擬主機(jī)
- ·云主機(jī)服務(wù)器租用,FILEZILLA 設(shè)置虛擬
- ·github是什么,服務(wù)器租用推廣方案
- ·武漢 服務(wù)器 租用,什么是網(wǎng)站CDN服務(wù),
- ·長沙服務(wù)器租用,云存儲空間如何使用
- ·數(shù)據(jù)中心的概念
- ·大帶寬服務(wù)器租用,關(guān)于服務(wù)器租用方面
- ·服務(wù)器是什么
- ·什么是入門級服務(wù)器、工作組服務(wù)器、企
- ·什么是服務(wù)器CP
- ·帶寬是什么東西
|
|
|
|