1. 程式人生 > >方法可以返回區域性變數的引用

方法可以返回區域性變數的引用

    在C++中,我們知道函式不能返回區域性變數的引用,因為當函式呼叫結束後,區域性變數會隨著函式一起被銷燬,因此區域性變數的引用作為返回值實際上是指向空物件。

    既然如此,為什麼在Java中可以返回區域性變數的引用呢?雖然我現在還沒有找到答案,但是有一種猜測。即,因為Java是自動回收機制,所以在方法中建立的區域性變數不會隨著方法呼叫結束而一起結束,所以,返回的引用仍然是有效的。如果是醬紫,辣麼區域性變數什麼時候才會失效(被回收)呢?