调用不带名称的 Java 方法
2022-08-31 10:13:10
我正在查看下面的代码,发现一些奇怪的东西:
public class Sequence {
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 ");
}
}
我本来以为这会给出编译错误,因为带有“y”不属于方法声明,而只是一个。为什么这是有效的?我不明白这个代码会或应该如何调用。System.out
{ }
当运行这个时,它也会产生,为什么在序列构造函数之前调用?x y c g
static { }