En Java, de manière générale, ce pointeur fait référence à l'objet du code en cours d'accès. Cependant, si vous devez utiliser un objet dans une classe externe dans une classe interne, vous devez utiliser le nom de la classe externe pour le qualifier. il. Cette méthode est également relativement courante dans le développement Android.
@Author: twlkyaopackage twlkyao;public class A { public A() { Inner inner = new Inner(); inner.outer(); // appelle la méthode externe de la classe interne this.outer(); . } public void external() { System.out.println("exécution externe"); } class Inner { public void external(){ System.out.println("inner run"); A.this.outer(); // appelle la méthode externe de A. System.out.println("--------"); } } public static void main(String[] args) { UNE une = nouveau A(); }}
Inner est une classe interne qui accède à la méthode external() dans la classe A. Puisque la classe interne anonyme a la même méthode, elle doit être qualifiée à l’aide du pointeur this de A.
Le résultat est :
course intérieure --------- course extérieure