好的,我知道如何访问包含内部类(无论是匿名还是内部)的外部类。
但我的问题是,如果外部类本身也是一个内部类,如何访问外部类呢?以下是一些代码以帮助理解:
public final class LocationPage extends BasePage {
private static final String CRITERIA_FORM_ID = "CriteriaForm";
protected Panel onCreateBodyPanel() {
return new ViewBodyPanel(BasePage.BODY_PANEL_ID) {
public void invokeMe() {
// How do I Invoke This Method?
}
private Form<CriteriaBean> helpCreateCriteriaForm() {
return new Form<CriteriaBean>(LocationPage.CRITERIA_FORM_ID) {
@Override
protected void onSubmit() {
LocationPage.this.ViewBodyPanel.invokeMe(); // Compile Error.
}
};
}
};
}
}
更新:对于那些想看我在这里尝试做什么的人,这是一个完整的代码示例。实际上,这是Apache Wicket特定的,但我认为你可以理解。看一下一个名为onSubmit的方法。我添加了一个代码注释来帮助确定它。
更新2:将代码示例简化了一点。对此感到抱歉!