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?
 
     
     
     
     
     
    