2011-10-17 32 views
2

超類可以通過關鍵字super引用,當前類可以通過this引用,但有沒有辦法指的是包含嵌套類/匿名類的類?如何引用Java中的匿名類或嵌套類的包含類

+0

可能重複[關鍵字爲匿名內部類的外部類?](http://stackoverflow.com/questions/56974/keyword-for-the-outer-class-from-an-anonymous-inner-類) – aioobe

回答

3

是的。就像這樣:

public class OuterClass { 
    class InnerClass { 
     void method() { 
      // Refer to outer class instance 
      doSomething(OuterClass.this); 
     } 

     void doSomething(OuterClass outer) { 
      // ... 
     } 
    } 
} 
3

我認爲你正在尋找this answer

基本上,如果你的外部類被稱爲集裝箱使用此語法:

Container.this.methodNameGoesHere(); 

這將確保你將調用外部類的methodNameGoesHere()方法,即使是在您的匿名重複的方法類。