进行了java开发有一段时间了,遇到一个有趣的问题,在此特意记录一下运行程序。
例1:
package com.yunix;
public class Test {
public Test() {
System.out.print("3");
}
static {
System.out.print("1");
}
{
System.out.print("2");
}
public static void main(String[] args) {
for(int i=0;i<10;i++){
new Test();
System.out.println();
}
}
}
运行结果为:
123
23
23
23
23
23
23
23
23
23
例2:
package com.yunix;
public class Test {
public Test() {
System.err.print("3");
}
static {
System.out.print("1");
}
{
System.out.print("2");
}
public static void main(String[] args) {
for(int i=0;i<10;i++){
new Test();
System.out.println();
}
}
}
运行结果为(此结果不唯一,但是1一直在2的前面,3的位置不确定):
12
2
2
2
2
2
2
2
2
2
3333333333