JVM 垃圾回收 寫在前面 本節常見面試題 問題答案在文中都有提到 如何判斷對象是否死亡(兩種方法)。 簡單的介紹一下強引用、軟引用、弱引用、虛引用(虛引用與軟引用和弱引用的區別、使用軟引用能帶來的好處)。 如何判斷一個常量是廢棄常量 如何判斷一個類是無用的類 垃圾 ...
本文已經收錄自筆者開源的 JavaGuide: https: github.com Snailclimb Java學習 面試指南 一份涵蓋大部分Java程序員所需要掌握的核心知識 如果覺得不錯的還,不妨去點個Star,鼓勵一下 Java 內存區域詳解 如果沒有特殊說明,都是針對的是 HotSpot 虛擬機。 寫在前面 常見面試題 基本問題 介紹下 Java 內存區域 運行時數據區 Java 對象 ...
2019-12-15 13:43 0 269 推薦指數:
JVM 垃圾回收 寫在前面 本節常見面試題 問題答案在文中都有提到 如何判斷對象是否死亡(兩種方法)。 簡單的介紹一下強引用、軟引用、弱引用、虛引用(虛引用與軟引用和弱引用的區別、使用軟引用能帶來的好處)。 如何判斷一個常量是廢棄常量 如何判斷一個類是無用的類 垃圾 ...
HashMap的底層數據結構? 數組+鏈表 , 數組+鏈表+紅黑樹 HashMap的存取原理? 通過獲取key對象的hashcode計算出該對象的哈希值,通過改哈希值與數組長度減去1進行位與運算 ...
1. 使用redis有哪些好處? (1) 速度快,因為數據存在內存中,類似於HashMap,HashMap的優勢就是查找和操作的時間復雜度都是O(1) (2) 支持豐富數據類型,支持string,list,set,sorted set,hash (3) 支持事務,操作都是原子性,所謂的原子性 ...
HashMap的底層數據結構? 數組+鏈表(JDK1.8之前) , 數組+鏈表+紅黑樹(JDK1.8之后) HashMap的存取原理? 通過獲取key對象的hashcode計算出該對象的哈 ...
1. 內存模型以及分區,需要詳細到每個區放什么。 棧區: 棧分為java虛擬機棧和本地方法棧 重點是Java虛擬機棧,它是線程私有的,生命周期與線程相同。 每個方法執行都會創建一個棧幀,用於存放局部變量表,操作棧,動態鏈接,方法出口等。每個方法從被調用,直到被執行完。對應着一個棧幀在虛擬機 ...
1. 內存模型以及分區,需要詳細到每個區放什么。 棧區: 棧分為java虛擬機棧和本地方法棧 重點是Java虛擬機棧,它是線程私有的,生命周期與線程相同。 每個方法執行都會創建一個棧幀,用於存放局部變量表,操作棧,動態鏈接,方法出口等。每個方法從被調用,直到被執行完。對應着一個棧幀在虛擬機 ...
一、JVM運行時區域 其中, 線程私有的:程序計數器,虛擬機棧,本地方法棧 線程共享的:堆,方法區,直接內存 1 程序計數器 程序計數器是一塊較小的內存空間,可以看作是當前線程所執行的字節碼的行號指示器。字節碼解釋器工作時通過改變這個計數器的值來選取 ...
一、Java基礎 1、String類為什么是final的。 2、HashMap的源碼,實現原理,底層結構。 3、說說你知道的幾個Java集合類:list、set、queue、map實現類咯。。。 4、描述一下ArrayList和LinkedList各自實現和區別 5、Java ...