c++
#include <iostream>
class A{
public:
virtual void putout(){
std::cout<<"A\n";
}
};
class B: public A{
public:
virtual void putout(){
std::cout<<"B\n";
}
};
class C: public B{
public:
virtual void putout(){
A::putout(); // 可以跨越访问
std::cout<<"C\n";
}
};
int main(){
A *a = new C();
a->putout();
deleta a;
}
Java
class A{
public void putout(){
System.out.println("A");
}
}
class B extends A{
@Override
public void putout() {
System.out.println("B");
}
}
class C extends B{
@Override
public void putout() {
super.putout(); // 没有办法实现对A中outout()方法的访问 (如有特殊方法,请标明!)
System.out.println("C");
}
}