Class.this 和 this 的有什么不同

转载:http://www.cnblogs.com/liwei45212/archive/2013/04/17/3026364.html

在阅读Java代码的時候

我们时会看到Class.this的使用

这个用法多用于在 nested class(内部类)中

当inner class(内部类)必顺使用到outer class(外部类)的this instance(实例)时

例:

class Outer{

    String data = "外部类別";

    public class Inner{

        String data = "內部类別";

        public String getOuterData(){

            return Outer.this.data;

        }

    }

}

如果你的程序里面包含了内部匿名类之类,比如线程

class A {

        public void callSomething(){

            new Thread(){

                public void run(){

                    // 这里的this 代表 匿名类的上下文, A.this 代表A实例化后对象的上下文

                }

            }.start();

        }    

}
posted @ 2014-08-11 11:11  beiyeren  阅读(503)  评论(0编辑  收藏  举报