大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學(xué)習(xí)攻略 Java學(xué)習(xí) 2020年Java基礎(chǔ)面試題及答案匯總

2020年Java基礎(chǔ)面試題及答案匯總

更新時(shí)間:2020-04-13 16:43:34 來源:動(dòng)力節(jié)點(diǎn) 瀏覽3181次


  什么情況下會(huì)觸發(fā)類的初始化?


  (1)、遇到 new, getstatic, putstatic, invokestatic 這4條字節(jié)碼指令。


  (2)、使用 java.lang.reflect 包的方法對(duì)類進(jìn)行反射調(diào)用。


  (3)、初始化一個(gè)類的時(shí)候,如果發(fā)現(xiàn)其父類還沒有進(jìn)行過初始化,則先初始化其父類(注意:


  如果是接口的話,則不要求初始化父類)。


  (4)、當(dāng)虛擬機(jī)啟動(dòng)時(shí),用戶需要指定一個(gè)要執(zhí)行的主類(包含 main()方法的那個(gè)類),虛擬機(jī)會(huì)先初始化這個(gè)主類。


  (5)、當(dāng)使用JDK 1.7 的動(dòng)態(tài)語言支持時(shí),如果一個(gè) java.lang.invoke.MethodHandle 實(shí)例最后的解析結(jié)果 REF_getstatic, REF_putstatic, REF_invokeStatic的方法句柄,并且這個(gè)方法句柄所對(duì)應(yīng)的類沒有進(jìn)行過初始化,則先觸發(fā)其初始化。


  外加幾種不會(huì)初始化的例子:


  (1)、同類子類引用父類的靜態(tài)字段,不會(huì)導(dǎo)致子類初始化。至于是否會(huì)觸發(fā)子類的加載和驗(yàn)證,則取決于虛擬機(jī)的具體實(shí)現(xiàn)。


  (2)、通過數(shù)組定義來引用類,也不會(huì)觸發(fā)類的初始化。例如下面這個(gè)語句:


  1Animal[] a = new Animao[10];


  并不會(huì)觸發(fā) Animal 類的初始化。


  (3)、引用一個(gè)類的常量也不會(huì)觸發(fā)初始化。


  談?wù)勀銓?duì)解析與分派的認(rèn)識(shí)。


  1.方法在程序真正運(yùn)行之前就有一個(gè)可確定的調(diào)用版本,并且這個(gè)方法的調(diào)用版本在運(yùn)行期間是不可變的,即“編譯時(shí)可知,運(yùn)行不可以變”,這類目標(biāo)的方法的調(diào)用稱之為解析。

  Java 語言中符合“編譯器可知,運(yùn)行期不可變”這個(gè)要求的方法,主要包括靜態(tài)方法和私有方法兩大類。


  2.解析調(diào)用一定是個(gè)靜態(tài)的過程,在編譯期就完全確定,在類加載的解析階段就將涉及的符號(hào)引用全部轉(zhuǎn)變?yōu)榭梢源_定的直接引用,不會(huì)延遲到運(yùn)行期再去完成。而分派(Dispatch)調(diào)用則可能是靜態(tài)的也可能是動(dòng)態(tài)的。于是分派方式就有靜態(tài)分派和動(dòng)態(tài)分派。


  下面我來解釋下靜態(tài)分派和動(dòng)態(tài)分派。


  靜態(tài)分派


  看下面這段程序


  1//定義幾個(gè)類 2 3public abstract class Animal { 4 } 5class Dog extends Animal{ 6 } 7class Lion extends Animal{ 8 } 910class Test4{ 11 public void run(Animal animal){12 System.out.println("動(dòng)物跑啊跑");13 }14 public void run(Dog dog){15 System.out.println("小狗跑啊跑");16 }17 public void run(Lion lion){18 System.out.println("獅子跑啊跑");19 } 20 //測(cè)試21 public static void main(String[] args){22 Animal dog = new Dog();23 Animal lion = new Lion();;24 Test4 test4 = ew Test4();25 test4.run(dog);26 test4.run(lion);27 }28}


  運(yùn)行結(jié)果是


  動(dòng)物跑啊跑


  動(dòng)物跑啊跑


  相信大家學(xué)過重載的都能猜到是這個(gè)結(jié)果。但是,為什么會(huì)選擇這個(gè)方法進(jìn)行重載呢?虛擬機(jī)是如何選擇的呢?


  在此之前我們先來了解兩個(gè)概念。


  先來看一行代碼:


  Animal dog = new Dog();


  對(duì)于這一行代碼,我們把Animal稱之為變量dog的靜態(tài)類型,而后面的Dog稱為變量dog的實(shí)際類型。


  現(xiàn)在我們?cè)賮砜纯刺摂M機(jī)是根據(jù)什么來重載選擇哪個(gè)方法的。


  對(duì)于靜態(tài)類型相同,但實(shí)際類型不同的變量,虛擬機(jī)在重載的時(shí)候是根據(jù)參數(shù)的靜態(tài)類型而不是實(shí)際類型作為判斷選擇的。并且靜態(tài)類型在編譯器就是已知的了,這也代表在編譯階段,就已經(jīng)決定好了選擇哪一個(gè)重載方法。


  由于dog和lion的靜態(tài)類型都是Animal,所以選擇了run(Animal animal)這個(gè)方法。


  靜態(tài)分派的典型應(yīng)用就是方法的重載的,現(xiàn)在應(yīng)該知道什么是靜態(tài)分派了吧?


  動(dòng)態(tài)分派


  和靜態(tài)分派類似,所謂動(dòng)態(tài)分派就是就是根據(jù)方法的實(shí)際類型來選擇調(diào)用哪個(gè)方法,而實(shí)際類型是需要到達(dá)運(yùn)行期才能知道。像重寫就是動(dòng)態(tài)分派的典型應(yīng)用了。


  如何定義個(gè)類加載器?你使過哪些或者你在什么場(chǎng)景下需要個(gè)定義的類加載器嗎?


  可以把自己自定義的類加載器繼承 ClassLoader,然后重寫 findClass() 方法,把自己的類加載邏輯寫到 findClass() 方法中去。


  使用類加載器的場(chǎng)景:


  加載特定路徑的 class 文件


  熱部署加載 class 文件


  從網(wǎng)絡(luò)中加載一個(gè)加密的 class 文件


2020年Java基礎(chǔ)面試題及答案匯總


 以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“2020年Java基礎(chǔ)面試題及答案匯總”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。


提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-04-24 搶座中
  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 天天操天天舔天天射 | 欧美日韩一区二区综合在线视频 | 亚洲女bbwxxxx另类 | 亚洲精品国产精品乱码不97 | 久久激情免费视频 | 久久久91精品国产一区二区三区 | 国产日韩欧美亚洲 | 欧美激情观看一区二区久久 | 日本aa在线观看 | 亚洲在线中文 | 色综合天天综合网国产人 | 狠狠色噜噜狠狠狠狠888奇米 | 亚洲精品国产福利 | 香蕉视频网站在线播放 | 成人中文字幕一区二区三区 | 亚洲一区二区三区久久精品 | 久操成人| 香蕉久久夜色精品国产 | 国产一区中文字幕在线观看 | 国产精品久久做爰 | 停停色| 国产精品久久久久久久人热 | 亚洲综合一区二区三区四区 | 国产精品va| 日本不卡高清中文字幕免费 | 久久精品国产一区二区三区肥胖 | 在线视频a| 久久国产精品只做精品 | 成人亚洲视频 | 久久国产综合 | 免费一级欧美片在线观看 | 亚洲成网站www久久九 | 免费视频爰爱太爽了 | 亚洲日本中文字幕在线 | 天天干亚洲 | 911精品国产91久久久久 | 欧美成人观看 | 日韩特级毛片免费观看视频 | 国产精品久久久久久久久久久不卡 | 神马午夜不卡影院 | 欧美性xxxxxx性 |