今天小編給大家分享一下JVM面試題實(shí)例分析的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
目前成都創(chuàng)新互聯(lián)已為1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機(jī)、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、尼金平網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
1package com.yanqun.pojo;
2class MyClass{
3 static int num1 = 100 ;
4
5 static MyClass myClass = new MyClass();
6 public MyClass(){
7 num1 = 200 ;
8 num2 = 200 ;
9 }
10 static int num2 = 100 ;
11 public static MyClass getMyClass(){
12 return myClass ;
13 }
14
15 @Override
16 public String toString() {
17 return this.num1 + "\t" + this.num2 ;
18 }
19}
20
21
22public class MyClassLoader {
23 public static void main(String[] args) {
24 MyClass myc = MyClass.getMyClass() ;
25 System.out.println(myc);
26 }
27}
運(yùn)行結(jié)果:200 100
解析:
JVM使用“類”的生命周期是:
類的加載->連接->初始化->使用->卸載
各階段主要完成的工作如下:
1.類的加載:
(1)尋找并加載類的二進(jìn)制數(shù)據(jù)(class文件)
(2)將硬盤上的class文件 加載到j(luò)vm內(nèi)存中
2.連接
該階段又包含了驗(yàn)證、準(zhǔn)備和解析3個(gè)過程,如下。
(1)驗(yàn)證
校驗(yàn).class文件的正確性
(2)準(zhǔn)備
給static靜態(tài)變量分配內(nèi)存,并初始化static的默認(rèn)值。
因此,本題在此階段各變量的值如下:
static int num1 = 0 ;
static MyClass myClass = null ;
static int num2 = 0 ;
(3)解析:把類中符號(hào)引用,轉(zhuǎn)為直接引用
舉個(gè)例子,在加載階段,JVM還不知道類的具體內(nèi)存地址,只能使用“com.yanqun.pojo.MyClass ”來替代MyClass類,“com.yanqun.pojo.MyClass ”就稱為符號(hào)引用;但在解析階段,JVM就可以將 “com.yanqun.pojo.MyClass ”映射成實(shí)際的內(nèi)存地址,因此就可以用 內(nèi)存地址來代替MyClass,這種使用 內(nèi)存地址來使用 類的方法 稱為直接引用。
3.初始化:給static變量 賦予實(shí)際的值
因此,本題在此階段各變量的值如下:
static int num1 = 100 ;
static MyClass myClass = new MyClass();此句調(diào)用了構(gòu)造方法,構(gòu)造方法會(huì)進(jìn)行如下賦值:
public MyClass(){
num1 = 200 ;
num2 = 200 ;
}
static int num2 = 100 ;
根據(jù)程序 自上而下執(zhí)行的特點(diǎn),num1最終的值是200,num2最終的值是100。
4.使用:對(duì)象的初始化、對(duì)象的垃圾回收、對(duì)象的銷毀
5.卸載
以上就是“JVM面試題實(shí)例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
文章標(biāo)題:JVM面試題實(shí)例分析
轉(zhuǎn)載來源:http://www.chinadenli.net/article32/ighdsc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站維護(hù)、標(biāo)簽優(yōu)化、靜態(tài)網(wǎng)站、微信公眾號(hào)、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)