1. 程式人生 > 其它 >PDF超過6000頁,常用Java框架面試題目

PDF超過6000頁,常用Java框架面試題目

三、堆空間

基本描述

JVM啟動時建立堆區,是記憶體管理的核心區,通常情況下也是最大的記憶體空間,是被所有執行緒共享的,幾乎所有的物件例項都要在堆中分配記憶體,所以這裡也是垃圾回收的重點空間。

堆疊關係

棧是JVM執行時的單位,堆是儲存單位,當棧中方法結束,相關物件失去所有引用後,不會馬上被移除堆空間,要等到垃圾收集器執行的時候。

四、虛擬機器棧

虛擬機器棧(Java棧)在每個執行緒建立時都會生成一個虛擬機器棧,棧的內部是一個個棧幀單元,對應Java方法的呼叫,其生命週期和執行緒週期保持一致。用來儲存方法的區域性遍歷,部分執行結果,方法的呼叫和返回。

棧幀是方法執行的資料集,維持執行過程中的各種資料資訊,執行的方法依次入棧,棧頂存放當前要執行的方法,執行結束後出棧,對於棧沒有垃圾回收問題。

五、程式計數器

基本描述

JVM中程式計數暫存器用來儲存下一條將要執行指令的地址,執行引擎獲取到指令後進行執行,是執行緒私有的。它可以看作是當前執行緒所執行的位元組碼的行號指示器。

前後關係

執行緒在獲取CPU的時間段內執行程式碼,但是執行緒隨時可能沒有執行完就被掛起,等到執行緒A再次獲取CPU執行時,CPU 得知道執行到執行緒A的哪一個指令,程式計數器會儲存該動作。

六、本地方法棧

本地方法棧與虛擬機器棧所起到的作用是類似的,虛擬機器棧為虛擬機器執行Java方法,本地方法棧管理虛擬機器使用到的 本地方法,在虛擬機器規範中對本地方法棧中方法使用的語言、使用方式與資料結構並沒有強制規定,因此具體的虛擬機器可以自由實現它。HotSpot虛擬機器直接就把本地方法棧和虛擬機器棧合二為一。

總結

螞蟻面試比較重視基礎,所以Java那些基本功一定要紮實。螞蟻的工作環境還是挺讚的,因為我面的是穩定性保障部門,還有許多單獨的小組,什麼三年1班,很有青春的感覺。面試官基本水平都比較高,基本都P7以上,除了基礎還問了不少架構設計方面的問題,收穫還是挺大的。


經歷這次面試我還通過一些渠道發現了需要大廠真實面試主要有:螞蟻金服、拼多多、阿里雲、百度、唯品會、攜程、豐巢科技、樂信、軟通動力、OPPO、銀盛支付、中國平安等初,中級,高階Java面試題集合,附帶超詳細答案,希望能幫助到大家。

本文已被CODING開源專案:【一線大廠Java面試題解析+核心總結學習筆記+最新講解視訊+實戰專案原始碼】

收錄