私はJavaのプログラミング方法論(スタンフォード)(CS106A)コースを見ています。講義14で、サハミ教授は 、スタックとヒープ上の関数とオブジェクトに対するJavaのメモリ割り当てについて話しました。
彼は、オブジェクトで呼び出されるメソッドには、スタックが割り当てられ、引数リストとこの参照にスタック上のスペースが割り当てられると述べました。保存されたこの参照を通じて、Javaはオブジェクトの正しいインスタンス変数を参照できます。
ただし、コンストラクターの場合、オブジェクトが作成されているため、この参照は引数リストとともに保存されません。
私の質問は、コンストラクターにこの参照がない場合、コンストラクター内でそれをどのように使用できるかということです。
public class foo {
private int i;
public foo(int i)
{this.i = i;// where this reference came from}
}