2008-08-27 24 views

cevap

85

Ben sadece son zamanlarda buldum. OuterClassName.this kullanın. Sadece nesne kendisi (yerine çağrılırken üyeleri), ardından Outer.this gitmek yoludur istiyorsanız

class Outer { 
    void foo() { 
     new Thread() { 
      public void run() { 
       Outer.this.bar(); 
      } 
     }.start(); 
    } 
    void bar() { 
     System.out.println("BAR!"); 
    } 
} 

güncellendi.

+0

TEŞEKKÜR EDERİZ! Bu beni çok uzun zamandır rahatsız ediyor. Cevabın hızlı bir google araması olduğunu sevindim. – aglassman

19

Kullanım EnclosingClass.this

1

Hala erişmek istiyorsanız

((Outer.this.getClass aynı Sınıf nesneyi döndürmek) ama daha verimlidir olacaktır) dış sınıf nesnesinin sınıfını almak için Outer.class kullanabilirsiniz Ekleyen sınıftaki statics, Outer.name adını kullanarak adın statik alan veya yöntemdir.

İlgili konular