日期:2014-05-20  浏览次数:20641 次

问一个语法问题Timer.this,这个是什么意思?
Timer.this
这个this代表啥?对象吗?为服么要这么写

------解决方案--------------------
public class Hello {
    public void print() {
        System.out.println("Hello.print()");
    }

    class InnerClass {
        public void print() {
            System.out.println("InnerClass.print()");
        }

        public void foo() {
            print();
            Hello.this.print(); // 因为这个类自己已经有了print()方法,如果想调用它的外部类Hello.print的话,需要使用Hello.this.print();
        }
    }

    public static void main(String[] args) {
        Hello hello = new Hello();
        Hello.InnerClass innerClass = hello.new InnerClass();
        innerClass.foo();
    }
}

------解决方案--------------------
内部类用到的,制定外部类的实例。