【Java】thisの使い方について
this.変数名:フィールドにアクセスする際に必要
this.変数はフィールドにアクセスする際に利用します。
thisは省略できますが、ローカル変数とフィールドの値が同一に設定でき、使い分けたいときなどに利用できます。
public class THISTEST { String str1 = "もじれつ"; String strA; String strB; THISTEST() { String str1 = "文字列"; strA = this.str1; strB = str1; } public static void main(String[] args) { THISTEST tt = new THISTEST(); String strA = "mojiretu"; System.out.println(strA); System.out.println(tt.strA); System.out.println(tt.strB); } } //実行結果 mojiretu もじれつ 文字列
上記サンプルプログラムの実行結果から、
①1行目はローカル変数「mojiretu」が出力されています。
②2行目はフィールド値「もじれつ」が出力されています。
③3行目はフィールド値「文字列」が出力されています。
ローカル変数とインスタンス変数は別物
- strA = this.str1; ※String str1 = “もじれつ”をセットする
- String strA = “mojiretu”;
と変数がセットされているため、System.out.println(strA); および System.out.println(tt.strA); はそれぞれ「mojiretu」、「もじれつ」と別の値が出力されます。
変数 strAを何度か値を変更していますがローカル変数、インスタンス変数それぞれ別枠で値を保持しています。
コメントを残す