我想知道是否可以在派生类之外显式访问 Java 中的超类方法。以下 C++ 代码说明了这一点:
#include <iostream>
using namespace std;
class A {
public:
virtual void f( ) {
cout << "A\n";
}
};
class B : public A {
public:
void f( ) {
cout << "B\n";
}
};
int main( ) {
B b;
b.A::f( );
return 0;
}
此代码输出“A”,因为它显式调用了 f 的 A 版本。
我知道这是可怕的设计,并且完全破坏了封装,但这在 Java 中可能吗?