**
Java中对象的产生过程
**
new ObjectInitTest()
对象的产生过程
1.JVM会在ObjectInitTest.class文件
2.先加载类级别的成员(静态成员变量 静态块初始化)
3.再加载对象级别的成员(实例成员变量 实例块初始化)
eg:
public class ObjectInit {
// 成员变量给了默认的初始化
private int a = method1();
private static int b = method2();
// 静态初始化块 专门针对static成员变量进行初始化
static {
System.out.println("static init block!");
b = 10;
}
// 实例初始化块 对实例成员变量(依赖于对象)
{
System.out.println("instance init block!");
a = 20;
}
// 构造函数
public ObjectInit() {
System.out.println("ObjectInitTest()");
}
private int method1() {
System.out.println("method1");
return 0;
}
private static int method2() {
System.out.println("method2");
return 0;
}
public static void main(String[] args) {
ObjectInit oit = new ObjectInit();
}
}
打印结果为:
method2
static init block!
method1
instance init block!
ObjectInitTest()