ヒープ上に存在するプリミティブとオブジェクトについて知っていますが、メソッドの数はオブジェクトのヒープサイズにどのように影響しますか?
例えば:
public class A {
int x;
public getX() { return x; }
}
public class B {
int x;
public getX() { return x; }
public getXString() { return String.valueOf(x); }
public doMoreInterestingStuff() { return x * 42; }
//etc
}
インスタンス化されると、両方のオブジェクトがヒープ上に存在し、両方ともプリミティブx
にメモリが割り当てられますが、メソッドシグネチャが多いため、Bにはより多くのヒープスペースが割り当てられますか?それとも、それらはpermGenスペースにのみありますか?この例では些細なことですが、いつでもメモリ内にこれらのオブジェクトが100,000以上あると、合計される可能性があると思います。