class Cup {
Cup(int marker) {
System.out.println("Cup(" + marker + ")");
}
void f(int marker) {
System.out.println("f(" + marker + ")");
}
}
class Cups {
static Cup c1;
static Cup c2;
static {
c1 = new Cup(1);
c2 = new Cup(2);
}
Cups() {
System.out.println("Cups()");
}
}
public class ExplicitStatic {
static Cups x = new Cups();
static Cups y = new Cups();
public static void main(String[] args) {
System.out.println("Inside main()");
}
}
输出:
Cup(1)
Cup(2)
Cups()
Cups()
Inside main()
所以有两个静态杯
在ExplicitStatic类中,为什么只显示
杯(1)和&杯(2)?
最佳答案
由于static
变量将被初始化一次。
关于java - 试图了解静态是Java,为什么它是此代码中的输出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28643798/