2011-06-30 5 views
0

私の考えは、Javaのメモリ管理では完全にはっきりしていません。メソッドがスタックにロードされた後、メソッド内のオブジェクトはどうなりますか?

メソッドがスタックとヒープのオブジェクトで読み込まれることはわかっています。

例えば、

method() { 
    ExampleClass ec=new ExampleClass(); 
} 

メソッドがスタックにロードされると、オブジェクトはどうなりますか?メソッドから自動的に除外され、ヒープに読み込まれますか?

+1

「メソッドはスタックにロードされます」という意味は、まず何を意味しますか? –

+0

メソッドはスタックにあります。 – Reuben

+0

@Reuben:それは具体的にはどういう意味ですか?あなたの思考をより具体的にしようとするほど、彼らはより明確になるでしょう。 –

答えて

3

スタックにロードされるものは、オブジェクトへの参照です。このメソッドをパラメータとして渡す場合も同じです。

JavaにCやC++のようなポインタがないということは、それらが存在しないことを意味するものではありません。それは、(プリミティブとは別に)どこにでもあります。

+0

+1:Javaには参照(またはプリミティブ)しかないので、C/C++のように&と*の表記は必要ありません。 –

関連する問題