我无法理解以下代码的执行。我想遵循 Java 程序,以便了解一切如何协同工作。我在 Eclipse 中设置断点,但没有解释原因。这是代码:
public class Sequence {
public Sequence() {
System.out.print("c ");
}
{
System.out.print("y ");
}
public static void main(String[] args) {
new Sequence().go();
}
void go() {
System.out.print("g ");
}
static {
System.out.print("x ");
}
}
代码的输出是x y c g
. 有人可以解释这是为什么吗?我以为程序入口点是,public static void main
但它似乎static
首先执行?