JAVA中的初始化过程
1. 静态数据的初始化
无论使用某个类创建了多少个对象,静态数据都只会占据一份存储区域。static 关键字只能作用于成员变量。如果一个静态变量没有进行初始化,那么它会被赋予一个默认值,如果这个静态变量是某个对象的引用,那么这个变量到的默认值为 null ,如果是基本的类型,那么会被赋予基本类型的初始值。当然,我们可以在定义的时候就对其进行初始化工作。但是,即使忘记对其进行初始化,也不会报错,因为当我们使用它的时候,它始终会有一个默认的值。
public class Demo1_staticInit {
public static void main(String[] args) {
System.out.println("main start============");
new C();
System.out.println("main start2============");
new C();
b_.f2(1);
c_.f3(1);
}
static B b_ = new B();
static C c_ = new C();
}
class A{
A(int mark){
System.out.println("A("+mark+")");
}
void f1(int mark){
System.out.println("f1("+mark+")");