現在実行中のオブジェクトを指す。
java.class │ ↓ ┌───────────────┐ │javava j = new javava (1,2,3) │ └───────────────┘ │ ↓ javava.classs │ ↓ ┌─────────────┐ │class javava │ │ ・ │ │ ・ │ │ javava(int x,int y,int z)│ │ this.x = x; │←このときのthisはjava.classの j を示していると思われる。 │ this.y = y; │なのでx,y,zに代入可能なのだと思われる │ this.z = z; │また、このような使い方も可能らしい │ │this(x,y,z); │ │但し、この表記はコンストラクタの先頭の行のみ(本ではそう書いてある) └─────────────┘(先頭というより、最後のコンストラクタでこれをやるとエラーになるような・・・)
また、コンストラクタで
#codeprettify{{ class test{
int x; int y;
test(){ this(100,100)
}
test(int x, int y){ this.x = x; this.y = y; }
} }} といった場合、最初の引数の無いtest()コンストラクタは引数のあるtest()コンストラクタを呼び出す。