2017-10-15 7 views
1

JavaでJavaメソッドオーバーロードを共有同一のメモリまたは異なるメモリ

public void test (int a,int b) 
public int test(String str) 
public boolean test (float a) 

下に示すように、私はメソッドをオーバーロードする場合、上記の方法の全ては、各試験のために、同一のメモリまたは異なるが使用されます。 同じメモリ位置を共有する場合、マルチスレッド環境でどのように動作するか。

おかげ

+1

- 呼び出し - 各呼び出しは、などのローカル変数の場合

  • をそのパラメータのための独立したスタックフレームを割り当てません異なる名前。 – slim

  • 答えて

    2

    自体方法のために割り当てられて何のメモリがありません。メモリが割り当てられている:クラスについて

    • - すべてstaticメンバーに対して1つの共有割り当て(一度クラスローダごとに、正確には)例えば
    • - そのインスタンス/非静的メンバーに対して
    • 方法について
    • 彼らはDを持っていたかのように同じように独立した - 彼らは3つの完全に別の方法でされているか、ここでは共有を