Java 内部类 this

内部类访问外部类的一个例子:

public class Abc {
    private class Bc {
        public void print() {
            System.out.println(Abc.this.self());
        }
    }
    private Bc bc = new Bc();

    public String self() {
        return "Abc";
    }

    public void print() {
        bc.print();
    }
}

 

public class Cde extends Abc {

    @Override
    public String self() {
        return "cde";
    }

    public static void main(String[] args) {
        Cde c = new Cde();
        c.print();
    }
}

 

执行Cde的main方法,输出为“cde”。

说明Abc.this代表的是运行时对象,而不是Cde父类Abc的对象。

posted @ 2016-12-20 23:01  raindream  阅读(2541)  评论(0编辑  收藏  举报