1. これは通常、それ自体の暗黙的なポインタ、つまり、このオブジェクトが配置されているメソッドを呼び出すオブジェクトを指します。
コード例: TestThis_1.java
/* 質問: これは何ですか
* 出力結果:
* A@4e44ac6a
*/
パブリック クラス TestThis_1 {
public static void main(String[] args) {
A aa = new A();
System.out.println (aa.f()); //aa.f()、オブジェクトの参照 (ポインタ) を返します aa
}
}
class A {
public A f() {
これを返す; / / f() メソッドを呼び出したオブジェクトのクラス A オブジェクトへの参照を返します
}
}
2. 同じ名前の変数を区別します。
コード例: TestThis_2.java
/* この一般的な使用法 1: 同じ名前の変数を区別する
* 出力結果:
* これ。i = 1
* i = 33
*/
パブリック クラス TestThis_2 {
public static void main(String[] args) {
A aa = 新しい A(33);
}
}
クラス A {
public int i = 1; //この i はメンバー変数です
/*注: 通常はこのようには書かれません、コンストラクターこれは主に初期化用です。これは主に理解を容易にするために書かれています*/
public A(int i) { //この i はローカル変数です
System.out .printf("this. i = %d\n", this.i); //this.i はオブジェクト自体のメンバー変数 i を参照します
System.out.printf ("i = %d\n", i); //i はローカル変数です i
}
}
以上がJava でのこのキーワードの使用法についての概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。