Re: [問題] local variable
經本人再次實驗結果,這種寫法 沒 有 問 題 XD
我目前寫的是跟硬體相關的程式
所以目前推測發生的問題可能跟機器本身執行的state有關(不過還是一樣沒有結論)
昨天測試不夠 還妄下斷論 還來發了篇廢文
所以這種寫法使用array沒有問題 請各位安心使用
版主如果覺得我的文太廢,請幫我刪掉吧 XD
※ 引述《tamamad (tamamad)》之銘言:
: 想請教各位一個 local variable的問題,程式碼如下:
: public void func(){
: byte[] buf = new byte[100];
: func2( buf );
: }
: public void func2(byte[] formal ){
: ....
: }
: buf是一個local variable,JVM會將他放置在stack
: 而buf所指到的byte array, JVM會將它放置在 heap 區
: 我想問的重點是,我call function時,
: 如果引數部分傳給他的是一個 local variable(如程式碼 call func2 的那行 )
: 會不會有可能造成一些問題?
: 我的想法是,JAVA只有pass by value,所以當我用 buf 當引數時,
: 在func2裡的 formal 也會指到放在heap裡的byte array,
: 所以原則上這應該是沒問題的引數傳遞
: 然而我在實作上卻會出現一些問題,
: 後來我的解法是把要傳給func2的byte array reference宣告成 instance variable
: 但是百思不得其解,為什麼傳 local variable會出問題,
: 想請教板上各位高手,
: 鳩境 問題出在哪裡?
: 以上
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.128.228.22
→
09/18 17:38, , 1F
09/18 17:38, 1F
→
09/18 17:40, , 2F
09/18 17:40, 2F
推
09/19 17:54, , 3F
09/19 17:54, 3F
→
09/20 03:00, , 4F
09/20 03:00, 4F
→
09/20 09:54, , 5F
09/20 09:54, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):