顯示廣告
隱藏 ✕
Disp BBS guest 註冊 登入(i) 線上人數: 93
看板 SuperTree
作者 dick51207 (dick51207.bbs@ptt.cc)
標題 Re: [問題] 請教物件生成的流程
時間 2013年04月03日 Wed. PM 01:40:44


※ 本文轉寄自 dick51207.bbs@ptt.cc

看板 java
作者 tkcn (小安)
標題 Re: [問題] 請教物件生成的流程
時間 Sat Mar  4 16:46:19 2006


※ 引述《Oreilly (怕寂寞卻愛自由)》之銘言:
: MyClass my =new MyClass(){}
: 有沒有人可以證明
: 在單一執行緒下
: 會先執行建構子  初始化物件
: 才assign給變數my
: 疑惑中...

先用 primitive type 做個簡單的說明
int a = 5;

事實上這也可以拆成兩段來看
前半段 int a 將從記憶體中劃出 4-byte 的空間並與 a 繫結
後半段則將 5 以 value 的形式儲存在 a 所繫結的記憶體當中。

所以很明顯的,兩者的先後關係是必然的。

至於物件其實也是一樣,
前半段 MyClass my 是規劃一個 Reference 並與 my 繫結
後半段則是將 MyClass 實體化後,
assign 其 hashCode (或著說記憶體位置) 給 my 所繫結的記憶體位址。

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.131.67.51
papayamilk:推1F 04/20 20:59

--
※ 看板: SuperTree 文章推薦值: 0 目前人氣: 0 累積人氣: 44 
※ 文章分類: 程式語言
r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇