Java thisとは?thisの使い方

クラスのメンバ関数呼び出しの際には、
内部でそのクラスオブジェクトの参照が渡されています。

このおかげで、メンバ関数内からクラスのメンバ変数に
アクセスできる仕掛けになっています。

class Ctest {
      public int data;
      public void show() {
            System.out.printf("data = %d\n", data);
      }
}

public class Cmain {
      public static void main(String[] args) {
            Ctest a = new Ctest();
            a.show();
      }
}

この例では、
メンバ関数showの中でメンバ変数dataが使われていますが、
これもthisキーワードのおかげ、と言うワケです。

this付きで記述してもかまいません。
thisを付けると、
そのクラスのメンバである事がハッキリと分かるのが利点です。

thisキーワード付きでの記述例

class Ctest {
      public int data;
      public void show() {
            System.out.printf("data = %d\n", this.data);
      }
}

public class Cmain {
      public static void main(String[] args) {
            Ctest a = new Ctest();
            a.show();
      }
}
タイトルとURLをコピーしました