从 Java 匿名类访问“this”
2022-08-31 07:46:00
给定以下代码:
public interface Selectable {
public void select();
}
public class Container implements Selectable {
public void select() {
...
}
public void createAnonymousClass() {
Selectable s = new Selectable() {
public void select() {
//see comment below.
}
};
}
}
我想从我的匿名类的方法中访问。但是,将再次调用匿名类的方法。Container.select()
select()
this.select()
select()
我的建议是:
将字段引入容器,例如
private Container self = this;
现在,我可以通过从匿名类内部调用来访问。Container.select()
self.select()
这是一种合理的方法吗?还是有更好的方法?