天堂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虛擬機(jī)的運(yùn)行過程

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-04-28 17:08:19

虛擬機(jī)的各個部分小編相信都了解的差不多了,可能對于虛擬機(jī)的運(yùn)行過程不太了解,下面小編通過一個具體的例子來分析它的運(yùn)行過程。

  DFD76B3EE2A391192DA2BE36C8F8140F.jpg

  虛擬機(jī)的各個部分小編相信都了解的差不多了,可能對于虛擬機(jī)的運(yùn)行過程不太了解,下面小編通過一個具體的例子來分析它的運(yùn)行過程。

<div>  虛擬機(jī)通過調(diào)用某個指定類的方法main啟動,傳遞給main一個字符串?dāng)?shù)組參數(shù),使指定的類被裝載,同時鏈接該類所使用的其它的類型,并且初始化它們。例如對于程序:
  class HelloApp
  {
  public static void main(String[] args)
  {
  System.out.println("Hello World!");
  for (int i = 0; i < args.length; i++ )
  {
  System.out.println(args[i]);
  }
  }
  }
  編譯后在命令行模式下鍵入: java HelloApp run virtual machine
  將通過調(diào)用HelloApp的方法main來啟動java虛擬機(jī),傳遞給main一個包含三個字符串"run"、"virtual"、"machine"的數(shù)組。現(xiàn)在我們略述虛擬機(jī)在執(zhí)行HelloApp時可能采取的步驟。
開始試圖執(zhí)行類HelloApp的main方法,發(fā)現(xiàn)該類并沒有被裝載,也就是說虛擬機(jī)當(dāng)前不包含該類的二進(jìn)制代表,于是虛擬機(jī)使用 ClassLoader試圖尋找這樣的二進(jìn)制代表。如果這個進(jìn)程失敗,則拋出一個異常。類被裝載后同時在main方法被調(diào)用之前,必須對類 HelloApp與其它類型進(jìn)行鏈接然后初始化。鏈接包含三個階段:檢驗,準(zhǔn)備和解析。檢驗檢查被裝載的主類的符號和語義,準(zhǔn)備則創(chuàng)建類或接口的靜態(tài)域以及把這些域初始化為標(biāo)準(zhǔn)的默認(rèn)值,解析負(fù)責(zé)檢查主類對其它類或接口的符號引用,在這一步它是可選的。類的初始化是對類中聲明的靜態(tài)初始化函數(shù)和靜態(tài)域的初始化構(gòu)造方法的執(zhí)行。一個類在初始化之前它的父類必須被初始化。
這就是虛擬機(jī)的運(yùn)行過程了。
 

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費(fèi)咨詢獲取折扣

Loading