天堂av免费 I av无码小缝喷白浆在线观看 I 欧美日韩一区在线播放 I 污黄瓜视频 I 色av色 I 亚洲加勒比少妇无码av I 久久人人97超碰国产精品 I 黑料网址成人免费观看 I 色鬼三级在线播放 I 2019久久久最新精品 I 国产成a人片在线观看视频 I 伊人精品久久久久中文字幕 I 日韩中出 I 亚洲第一欧美 I 火辣日本少妇 I 国产97av I 亚洲浮力影院 I 国产亚洲精品自在久久蜜tv I 黄色网址av I www.欧美色图.com I 碰碰精品 I 五月综合激情网 I 黄色片在线免费 I 精品久久久久久久久久ntr影视 I 日本黄色绿像 I 免费视频久久久久久久 I 久草在线视频看看 I 中文字幕国产在线观看 I 性色欲情网站iwww九文堂 I 偷拍对白清晰情侣视频 I 国产老头和老头xxxxx免费 I 麻豆精品在线 I 国产精伦一区二区三区 I 91麻豆精品国产91 I 一区二区三区在线视频看

×
新網 > 虛擬主機 > 正文

Java培訓基礎學習之Java虛擬機知識解析

  • 作者:新網
  • 來源:新網
  • 瀏覽:100
  • 2018-04-24 12:07:33

所謂JVM,即Java Virtual Machine(Java虛擬機)的縮寫。眾所周知,Java語言的一個非常重要的特點就是與平臺的無關性,但是它們又是怎么扯上關系的呢?小編來為大家解答。

  20150619_8403fcf6dfb222b5192aXUt8c7bgg9Ko.jpg

<div>  所謂JVM,即Java Virtual Machine(Java虛擬機)的縮寫。眾所周知,Java語言的一個非常重要的特點就是與平臺的無關性,但是它們又是怎么扯上關系的呢?小編來為大家解答。
  作為Java的基礎知識,很多企業在面試時會提問求職者Java虛擬機的一些知識:
  1、Java虛擬機為新生對象分配內存有哪兩種方式?
  答:指針碰撞和空閑列表。Java虛擬機采用哪種方式為新生對象分配內存,取決于所使用的垃圾收集器,當垃圾收集器具有整理過程時,虛擬機將采用指針碰撞的方式;當垃圾收集器的回收過程沒有整理過程時,則采用空閑列表方式。
  2、Java虛擬機運行時數據區包括哪些?
  答:根據Java虛擬機規范的規定,虛擬機內存在Java程序運行時被分為程序計數器、Java虛擬機棧、本地方法棧、堆和方法區五個區域。
  3、Java虛擬機類加載的周期包括哪幾個階段?
  答:類從被加載到虛擬機內存中開始,到卸載出內存為止,它的整個生命周期包括:加載、驗證、準備、解析、初始化、使用和卸載七個階段。
  4、Java虛擬機分配過程中如何解決線程安全?
  答:兩種方式:1)對分配內存空間的動作進行同步處理——實際上虛擬機采用CAS配上失敗重試的方式保證更新操作的原子性;2)把內存分配的動作按照線程劃分在不同的空間之中進行,即每個線程在Java堆中預先分配一小塊內存,稱為本地線程分配緩沖(TLAB)。哪個線程要分配內存,就在哪個線程的TLAB上分配,只有TLAB用完并分配新的TLAB時,才需要同步鎖定。虛擬機是否使用TLAB,可以通過-XX:+/-UseTLAB參數來設定。
  5、Java虛擬機對象在內存中如何布局?
  答:在HotSpot虛擬機中,對象在內存中存儲的布局可以分為3塊區域:對象頭(Header)、實例數據(Instance Data) 和對齊填充(Padding)。
  6、Java虛擬機中主流的訪問方式有哪幾種?
  答:有使用句柄和直接指針兩種。使用句柄訪問的最大好處就是reference中存儲的是穩定的句柄地址,使用直接指針訪問的最大好處就是速度更快,節省了一次指針定位的時間開銷。
 

免責聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,也不承認相關法律責任。如果您發現本社區中有涉嫌抄襲的內容,請發送郵件至:operations@xinnet.com進行舉報,并提供相關證據,一經查實,本站將立刻刪除涉嫌侵權內容。

免費咨詢獲取折扣

Loading