この質問は明白な答えで少し些細なことに見えるかもしれませんが、周りにも、StackOverflowにも、Googleにも説明が見つかりませんでした。
次のコード:
Object o = this;
オブジェクトを操作する必要があるクラス メソッド (静的メソッドではなく、ジェネリック クラスに属するインスタンス メソッド) 内で使用できますか (たとえば、for ループを使用します)。
繰り返しますが、配列があり、MyObject で使用できるMyObject[] oArr
と仮定して、次のコードを検討してください。otherMethod
MyObject obj = this;
for(MyObject f : oArr){
obj = obj.otherMethod(f);
}
ここで起こっていることは次のとおりです。
obj
これは、メソッドを実行している現在のオブジェクトへの参照に 割り当てるために使用されます- 参照が割り当てられると、各反復中にオブジェクト o の参照を最終的に更新できます。
正直なところ、ここで私を混乱させているのは、次のコード行です。
MyObject obj = this;
this
単にオブジェクトを参照するために使用される、変数/メソッド名なしで見つけたのはこれが初めてです。
ここで何が起こっているのかわかりましたか?私は何か不足していますか?の同様の使用法に関する追加情報を見つけることができるリンクはありthis
ますか?
ありがとう