0
class A{
    int i,j;
    A(int x,int y){
        i=x;j=y;
    }
    void show(){
        System.out.println("i="+i+" j="+j);
    }
}

class B extends A{    
    int k;
    B(int i,int j,int k){
        super(i,j);
        this.k=k;
    }
    void show(){
        System.out.println("k="+k);
    }
}

public class overridingEx{
    B ob=new B(1,2,3);
    ob.show();    // this will call the B's show method.
}

请告诉我有没有办法从 B 的类对象 ob 调用 A 类方法?

4

2 回答 2

2

您不需要从 调用A'sshow方法ob。您应该super.show()从 withinBshow方法中调用。

void show(){
    super.show();
    System.out.println("k="+k);
}

现在,当ob.show()被调用时,您将看到两种show()方法的输出:

i=1 j=2
k=3

从子类中调用super.show()会调用超类的show()方法实现。

于 2013-08-16T19:27:02.937 回答
0

用于super显式使用超类的方法、常量、构造函数等。

放入super.show()即可B使用A#show()

于 2013-08-16T19:27:20.760 回答