第10章--内部类_.this
/** * * 内部类中,返回外围类 引用的方法 * 在内部类中,设置一个方法 比如 getOuter(),在这个方法中 返回外 围类名.this. * */public class DotThis{ void f() { System.out.println("DotThis.f()"); } /** * 从内部类的方法中,返回外部类的引用 * */ public class Inner { public DotThis outer() { return DotThis.this; //从内部类的方法中,返回外部类的引用,使用 外围类名字.this } } //外围类中,也也可以通过这种方式返回 本身的引用, //this类似一个静态 字段,但是 在这个方法前加static 却不行,说明this不是普通的static字段 public DotThis getThis() { return DotThis.this; // } //直接返回this.这种方式只是做个说明,一般不用这样的,有点画蛇添足的感觉 public DotThis getThis2() { return this; } public Inner inner() { return new Inner(); } public static void main(String[] args) { DotThis dt = new DotThis(); dt.getThis().f(); //等效于dt.f(); dt.getThis2().f();//等效于dt.f(); DotThis.Inner dti = dt.inner(); dti.outer().f(); }}
?