我有以下类结构。我想知道如何在Eclipse中跳转到printVar()方法的实际实现。
如果我将鼠标悬停在main方法中的两个方法调用上并单击打开实现,我会看到两个类。是否有一种方法可以直接跳转到B类中此方法调用w.getWrapperVar().printVar()的实现?
如果我将鼠标悬停在main方法中的两个方法调用上并单击打开实现,我会看到两个类。是否有一种方法可以直接跳转到B类中此方法调用w.getWrapperVar().printVar()的实现?
public class A {
private String var;
public A(String a){
this.var=a;
}
public void printVar(){
System.out.println("class A print: " + this.var);
}
}
public class B extends A{
private String var;
public B(String a){
super(a);
this.var=a;
}
@Override
public void printVar(){
System.out.println("class B print: " + this.var);
}
}
public class Wrapper {
private B wrapperVar;
private A wrapperVar2;
public Wrapper(String var){
this.wrapperVar = new B(var);
this.wrapperVar2 = new A(var);
}
// explicit Return Class A
public A getWrapperVar(){
return this.wrapperVar;
}
public A getWrapperVar2(){
return this.wrapperVar2;
}
}
public class main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Wrapper w = new Wrapper("value");
w.getWrapperVar().printVar();
w.getWrapperVar2().printVar();
}
}
getWrapperVar
返回一个A
,因此 Eclipse 没有理由相信A
的实现或其任何子类的实现是你要寻找的。 - njzk2