There are two ways to reference the instance of a class within that class. For example:
class Person {
String name;
public void setName(String name) {
this.name = name;
}
public void setName2(String name) {
Person.this.name = name;
}
}
One uses this.name
to reference the object field, but the other uses className.this
to reference the object field. What is the difference between these two references?