HashMap
クラスには内部クラスKeySet
があり、そのインスタンスはHashMap
のインスタンスメソッドkeySet()
によって返されます。この内部クラスには、次のメソッドが含まれています。HashMap.this.clear()これはどういう意味ですか?
public void clear() {
HashMap.this.clear();
}
私はそれは、 "現在の" オブジェクトへの参照である "this
"
- の一般的な意味を理解しています。
- コンストラクタまたはインスタンス化されたオブジェクトまたはメソッドが呼び出されているオブジェクトへの参照として機能する任意のインスタンスメソッド内で使用できます。 「
this
」を使用して上記のスタイルが面白いようだ
、
- それは、クラスのその静的変数かのように使用されています。
- まだメソッドが呼び出されているオブジェクトを参照する必要があります。これは論理的にはHashMapインスタンスでなければなりません。
動的に作成されたインスタンスオブジェクトを静的に参照することは可能ですが、実行時に無数のインスタンスが存在する可能性があり、これを指定する言語構造がないため不可能ですクラスとそのインスタンスとの関係
私は間違いなく何かを見逃しています。
ありがとうございます。参考にしてください。 – sandeepkunkunuru
スーパー調査と優れた説明! –
@kunkunurここでシャドウイングのセクションを参照してください。http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html – Nick