1

java中是否有关键字允许从嵌套类中显式调用包含实例(或其超类)的成员?

设想

public class Superclass {
    public void doSomething() {
        // do something that's of interest to the superclass
    }
}

public class Subclass extends Superclass {
    @Override
    public void doSomething() {
        // do something that's of interest to the subclass
        // possibly call super.doSomething()
    }

    private class NestedClass {
        private void doSomething() {
            // do something that's of interest to the nested class
            // calling doSomething() here without an explicit scope
            // specifier results in a stack overflow
        }

        private void doSomethingElse() {
            if (somethingOfInterestToTheSubclassIsNotImportant) {
                // just invoke the superclass's doSomething() method
            } else {
                // invoke the subclass's doSomething() method
            }
        }
    }
}
4

1 回答 1

2

哦,完全。只需使用Subclass.this.doSomething(), 或Subclass.super.doSomething()获取超类方法。

于 2012-04-05T18:52:55.963 回答