1. 程式人生 > >Java中建立物件的記憶體圖

Java中建立物件的記憶體圖

  所有人都知道面向物件思想,Java中的物件的建立在記憶體中是如何建立的,傳智播客的視訊看了一遍,把一些講解的比較清晰的內容記錄下來,方便記憶的更加深刻,Java中建立物件的過程,首先要理解JVM中棧、堆、方法區的空間,以及在這三個空間內,虛擬機器都進行什麼操作,這樣就會理解起來容易一些,其實Java是在C語言的基礎上發展起來的,很多的內容是借鑑C語言的。

以下分別是建立一個物件、兩個物件、以及三個物件的記憶體圖解,講的比較詳細,而且比較生動,很好理解:

(方法呼叫是在棧中進行的,當方法呼叫完成之後,會立即銷燬的,棧中存放是有先進後出的原則的,應該是從下往上進行儲存的,棧中存放方法名,以及堆中建立物件的記憶體地址,通過記憶體地址,進行物件屬性的呼叫以及賦值,物件方法是存放在方法區的,同樣是通過記憶體地址進行呼叫的,而且同一類物件共用一個方法區

一、一個物件的建立在記憶體中的圖解

二、兩個物件的建立在記憶體中的圖解

三、三個物件的建立在記憶體中的圖解

(一個物件賦值給另一個物件,其實在記憶體中的表現就是指向物件在堆中位置)