public class StaticFiledOrder {
private final int result;
private static final StaticFiledOrder instance = new StaticFiledOrder();
private static final int intValue=100;
public StaticFiledOrder(){
result= intValue - 10;
}
public static void main(String[] args) {
System.out.println(instance.result);
}
}
public class StaticFiledOrder {
private final int result;
private static final StaticFiledOrder instance = new StaticFiledOrder();
private static final int intValue=(int)Math.random()* 1000;
public StaticFiledOrder(){
result= intValue - 10;
}
public static void main(String[] args) {
System.out.println(instance.result);
}
}
public class StaticFiledOrder {
private final int result;
private static final int intValue=(int)Math.random()* 1000;
private static final StaticFiledOrder instance = new StaticFiledOrder();
public StaticFiledOrder(){
result= intValue - 10;
}
public static void main(String[] args) {
System.out.println(instance.result);
}
}
循环初始化
既然static变量可以调用构造函数,那么可不可以调用其他类的方法呢?
看下这个例子:
public class CycleClassA {
public static final int a = CycleClassB.b+1;
}
public class CycleClassB {
public static final int b = CycleClassA.a+1;
}