欧美1区2区3区激情无套,两个女人互添下身视频在线观看,久久av无码精品人妻系列,久久精品噜噜噜成人,末发育娇小性色xxxx

攜程java高級社招面經(jīng)

1. 描述一下JVM 加載Class 文件的原理機制?

2. 什么是類加載器?

類加載器是一個用來加載類文件的類。Java 源代碼通過 javac 編譯器編譯成類

文件。然后JVM 來執(zhí)行類文件中的字節(jié)碼來執(zhí)行程序。類加載器負責加載文件

系統(tǒng)、網(wǎng)絡(luò)或其他來源的類文件。

3. 類加載器有哪些?

4. 什么是 tomcat 類加載機制?

5、類加載器雙親委派模型機制?

什么是雙親委派模型(Parent-Delegation Model)?為什么使用雙親委派模型?

JVM 中加載類機制采用的是雙親委派模型,顧名思義,在該模型中,子類加載器

收到的加載請求,不會先去處理,而是先把請求委派給父類加載器處理,當父類

加載器處理不了時再返回給子類加載器加載;

為什么使用雙親委派模型?

因為安全。使用雙親委派模型來組織類加載器間的關(guān)系,能夠使類的加載也具有

層次關(guān)系,這樣能夠保證核心基礎(chǔ)的Java 類會被根加載器加載,而不會去加載

用戶自定義的和基礎(chǔ)類庫相同名字的類,從而保證系統(tǒng)的有序、安全。

6. Java 內(nèi)存分配?

7. Java 堆的結(jié)構(gòu)是什么樣子的?

8. 簡述各個版本內(nèi)存區(qū)域的變化?

9. 說說各個區(qū)域的作用?

10. Java 中會存在內(nèi)存泄漏嗎,簡述一下?

理論上Java因為有垃圾回收機制(GC)不會存在內(nèi)存泄露問題(這也是Java被廣泛使用于

服務(wù)器端編程的一個重要原因);然而在實際開發(fā)中,可能會存在無用但可達的對象,這些

對象不能被GC回收,因此也會導(dǎo)致內(nèi)存泄露的發(fā)生。例如Hibernate的Session(一級緩存)

中的對象屬于持久態(tài),垃圾回收器是不會回收這些對象的,然而這些對象中可能存在無用的

垃圾對象,如果不及時關(guān)閉(close)或清空(flush)一級緩存就可能導(dǎo)致內(nèi)存泄露。

11. Java 類加載過程?

在Java中,類裝載器把一個類裝入Java虛擬機中,要經(jīng)過三個步驟來完成:裝載、鏈接和

初始化,其中鏈接又可以分成校驗、準備、解析

裝載:查找和導(dǎo)入類或接口的二進制數(shù)據(jù);

鏈接:執(zhí)行下面的校驗、準備和解析步驟,其中解析步驟是可以選擇的;

校驗:檢查導(dǎo)入類或接口的二進制數(shù)據(jù)的正確性;

準備:給類的靜態(tài)變量分配并初始化存儲空間;

解析:將符號引用轉(zhuǎn)成直接引用;

初始化:激活類的靜態(tài)變量,初始化Java代碼和靜態(tài)Java代碼塊

12. 什么是GC? 為什么要有GC

13. 簡述一下Java 垃圾回收機制?

14. 如何判斷一個對象是否存活?

15. 垃圾回收的優(yōu)點和原理,并考慮2 種回收機制?

基本原理是什么?

Java語言中一個顯著的特點就是引入了垃圾回收機制,使c++程序員最頭疼的內(nèi)存管理的

問題迎刃而解,它使得Java程序員在編寫程序的時候不再需要考慮內(nèi)存管理。由于有個垃

圾回收機制,Java中的對象不再有"作用域"的概念,只有對象的引用才有"作用域"。垃圾

回收可以有效的防止內(nèi)存泄露,有效的使用可以使用的內(nèi)存。垃圾回收器通常是作為一個

單獨的低級別的線程運行,不可預(yù)知的情況下對內(nèi)存堆中已經(jīng)死亡的或者長時間沒有使用

的對象進行清楚和回收,程序員不能實時的調(diào)用垃圾回收器對某個對象或所有對象進行垃

圾回收?;厥諜C制有分代復(fù)制垃圾回收和標記垃圾回收,增量垃圾回收。

16. 深拷貝和淺拷貝?

淺拷貝被復(fù)制對象的所有變量都含有與原來的對象相同的值,而所有的對其他對象的引用仍

然指向原來的對象。即對象的淺拷貝會對“主”對象進行拷貝,但不會復(fù)制主對象里面的對

象?!崩锩娴膶ο蟆皶谠瓉淼膶ο蠛退母北局g共享。

簡而言之,淺拷貝僅僅復(fù)制所考慮的對象,而不復(fù)制它所引用的對象。

深拷貝深拷貝是一個整個獨立的對象拷貝,深拷貝會拷貝所有的屬性,并拷貝屬性指向的動

態(tài)分配的內(nèi)存。當對象和它所引用的對象一起拷貝時即發(fā)生深拷貝。深拷貝相比于淺拷貝速

度較慢并且花銷較大。

簡而言之,深拷貝把要復(fù)制的對象所引用的對象都復(fù)制了一遍。

17. 什么是分布式垃圾回收(DGC)?它是如何工作

的?

RMI子系統(tǒng)實現(xiàn)基于引用計數(shù)的“分布式垃圾回收”(DGC),以便為遠程服務(wù)器對象提供自動

內(nèi)存管理設(shè)施。

當客戶機創(chuàng)建(序列化)遠程引用時,會在服務(wù)器端DGC上調(diào)用dirty()。當客戶機完成遠

程引用后,它會調(diào)用對應(yīng)的clean()方法。

針對遠程對象的引用由持有該引用的客戶機租用一段時間。租期從收到dirty()調(diào)用開始。

在此類租約到期之前,客戶機必須通過對遠程引用額外調(diào)用dirty()來更新租約。如果客戶

機不在租約到期前進行續(xù)簽,那么分布式垃圾收集器會假設(shè)客戶機不再引用遠程對象。

?


#攜程##java工程師##社招##面經(jīng)#
全部評論
問下老哥后來有做測評嗎
點贊 回復(fù) 分享
發(fā)布于 2024-09-19 14:57 上海

相關(guān)推薦

評論
點贊
37
分享

創(chuàng)作者周榜

更多
牛客網(wǎng)
??推髽I(yè)服務(wù)