[Java] this
1. this
オブジェクト自体のキーワードを参照して、自分のフィールドとコンポーネントを明確に指示します.
次のコンストラクション関数のパラメータnを受信し、name fieldで初期化するとします.
※上にはCarジェネレータ、すなわちCarを通過します.nameからnameにアクセスすると、上記で指定したname文字列は取得できません(パラメータnameとfield nameはそれぞれ指示され、正常に割り当てられません).
通常、Classフィールドのnameにパラメータを割り当てることができます.
オブジェクト自体のキーワードを参照して、自分のフィールドとコンポーネントを明確に指示します.
次のコンストラクション関数のパラメータnを受信し、name fieldで初期化するとします.
public class Car{
String name;
public Car(String n){
name = n;
}
}
このとき、パラメータnを上記フィールドのnameとして宣言することができるが、可読性が増加すると、以下に示すように変数名を変更することができる.public Car(String name){
name = name;
}
上記のコードでは、nameパラメータを受信したときのパラメータ名がフィールドパラメータ名と同じである場合、コンパイラは変数を正常に割り当てません.※上にはCarジェネレータ、すなわちCarを通過します.nameからnameにアクセスすると、上記で指定したname文字列は取得できません(パラメータnameとfield nameはそれぞれ指示され、正常に割り当てられません).
public Car(String name){
this.name = name;
}
この場合、このキーワードを使用して、自分のフィールドを明確に指すことができます.通常、Classフィールドのnameにパラメータを割り当てることができます.
Reference
この問題について([Java] this), 我々は、より多くの情報をここで見つけました https://velog.io/@gyrbs22/Java-thisテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol