この意図的に非常に単純なクラスのペアを考えると
class Base {
private int a;
private int b;
public Base() {
this.a = 0;
this.b = 0
}
}
class Derived extends Base {
private int c;
Derived() {
super();
this.c = 0;
}
Derived d = new Derived();
そうすることで少なくともそれが保証されa
、b
連続して割り当てられることは私の理解です。ただし、サブオブジェクトをメモリ内の残りのオブジェクトから分離することは可能ですかBase
、それともオブジェクト全体を連続して割り当てる必要がありますか。c
Derived
int
また、 の 2 つの sBase
が連続しているという私の仮定は正しいですか?
連続して割り当てられた場合でも、サブオブジェクトはエデン空間を離れるときにBase
残りのオブジェクトから分離できますか?Derived