黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

2016Java面試題精編版—內存管理


面試題:Java是如何管理內存的?

9.jpg

答案:Java的內存管理就是對象的分配和釋放問題。在Java中,程序員需要通過關鍵字new 為每個對象申請內存空間,所有的對象在堆中分配空間。另外,對象的釋放是有GC決定和執(zhí)行的。在Java中,內存的分配是由程序完成的。而內存的釋放室友GC完成的,這種收支兩條線的方法確實簡化了程序員的工作。但同時,它也加重了JVM的工作。這也是Java程序運行速度較慢的原因之一。因為GC為了能夠正確釋放對象,必須監(jiān)控每一個對象的運行狀態(tài),包括對象的申請、引用、被引用、賦值等,GC都需要進行監(jiān)控。

監(jiān)視對象狀態(tài)是為了更加準確、及時地釋放對象,而釋放對象的根本原則就是該對象不再被引用。

為了更好的理解GC的工作原理,我們可以將對象考慮為有向圖的頂點,將引用關系考慮為圖的有向邊,有向邊從引用者指向被引用對象。另外,每個線程對象可以作為一個圖的起始頂點,例如,大多程序從main進程開始執(zhí)行,那么該圖就是以main進程頂點開始的一棵根樹。在這個有向圖中,根頂點可達的對象都是有效對象,GC將不回收這些對象。如果某個對象與這個根頂點不可達,那么我們認為這個對象不再被引用,可以被GC回收。

更多Java知識Java視頻Java教程盡在動力節(jié)點Java培訓,關注動力節(jié)點官方微信,獲得一手Java面試題


上一篇:2016Java面試題精編版—垃圾收集
下一篇:2016Java面試題精編版—序列化

開班信息

主站蜘蛛池模板: 51自拍| 最近最好看2019年中文字幕 | 国产成人午夜91精品麻豆剧场 | www.久久.com | 免费在线观看日韩 | 最近最好看2019年中文字幕 | 免费国产成人高清在线观看视频 | 欧美成人777 | 2021天天操 | 羞羞视频免费网站欧美 | 久久亚洲网站 | 国产成人黄色 | 国产精品九九九久久九九 | 国产 日韩 欧美 亚洲 | 久久精品国产精品亚洲婷婷 | 免费吃奶摸下激烈视频青青网 | 一区二区三区亚洲视频 | 欧美日韩在线成人免费 | 欧美精品午夜 | 黄色成人在线 | 日本 欧美 在线 | 午夜欧美成人久久久久久 | 99爱在线精品视频免费观看9 | 成人污污| 亚州久久| 午夜色图 | 国产亚洲papapa| 国产白丝在线 | 午夜在线亚洲 | 最新午夜宅男 | 91黄色软件 | 黄网站在线观看视频 | 9久热这里只有精品视频在线观看 | 欧美精品h在线播放 | 影音先锋国产系列精品 | 在线观看欧美一区 | 欧美日韩有码 | 中国女人三级在线播放 | 最近最新中文字幕免费大全3 | 国产欧美日韩在线一区二区不卡 | 日韩操 |