自从我提出一个问题以来,我已经很长时间才能原谅我的错误。
所以,我有一个我不明白的代码。它处理接口和超级/子类。我甚至有答案,但我不知道它是如何得到答案的。我的问题是,我如何学习跟踪,或者有没有办法在Eclipse中看到哪些行首先被执行?
例如,eclipse或任何其他工具是否允许用户实际查看线条打印的内容和原因?
这是我的代码。我有正确答案,但我不知道他们如何追查它。任何帮助,将不胜感激。
interface Silly {
public void narf();
public void poit(Silly s);
}
public class Bird implements Silly {
public static void main(String args[]) {
System.out.println("zero");
Silly s = new SillyBird(1);
Silly s2 = new Loony();
s.poit(s2);
s2.poit(s);
System.out.println("zymurgy");
}
public Bird() {
this(0);
System.out.println("zircon");
}
public Bird(int i) {
System.out.println("zanzibar");
}
public void narf() {
System.out.println("zort");
}
public void poit(Silly s) {
s.narf();
}
}
class SillyBird extends Bird {
public SillyBird() {
System.out.println("duchess");
}
public SillyBird(int i) {
super(i);
}
public void narf() {
System.out.println("drum");
super.narf();
}
}
class Loony extends SillyBird {
public Loony() {
System.out.println("stupendous");
}
public void narf() {
System.out.println("snark");
}
}
上面代码的输出是:
zero
zanzibar
zanzibar
zircon
duchess
stupendous
snark
drum
zort
zymurgy
正如@Abra在评论中所提到的,您可以在要查看的函数上设置断点并使用,进入'操作以查看执行时函数中发生的情况。调试器将在执行的每一步向您显示所有本地和全局的状态