在匿名类中调用超级方法

时间:2014-09-24 08:19:52

标签: java inheritance

从匿名类调用ParentClass的super方法的正确方法是什么?

在当前状态下,super指的是Runnable。

public class ChildClass extends ParentClass {

    @Override
    public void myMethod(final double value) {

        new Runnable() {
            @Override
            public void run() {
                super.myMethod(value);
            }
        };
    }
}

2 个答案:

答案 0 :(得分:14)

您可以使用以下代码:

public class ChildClass extends ParentClass {
    @Override
    public void myMethod(final double value) {
        new Runnable() {
            @Override
            public void run() {
                ChildClass.super.myMethod(value);
            }
        };
    }
}

答案 1 :(得分:5)

致电ChildClass.super.myMethod(value);

注意:如果您想从ChildClass.this.myAttribute访问实例属性/方法,也可以使用ChildClass.this.myMethod() / ChildClass