[b]1.静态成员和静态块[/b],这种情况在[color=red]类加载的时候就会执行[/color]并且[color=red]只会执行一次[/color]
比如
还有
当同时存在很多静态成员和静态块的时候,按顺序来初始化
[b]2.普通成员和游离块[/b],这种情况在创建对象的过程中才会被执行
比如
还有
当同时存在很多普通成员和游离块的时候,按顺序来初始化
[b]3.构造器[/b]
[b]注意:[/b]基类的成员初始化先于子类
比如
class A
{
public static A a = new A();
}
还有
class B
{
static
{
System.out.println("static block");
}
}
当同时存在很多静态成员和静态块的时候,按顺序来初始化
[b]2.普通成员和游离块[/b],这种情况在创建对象的过程中才会被执行
比如
class C
{
public C c = new C();
}
还有
class D
{
{
System.out.println("free block");
}
}
当同时存在很多普通成员和游离块的时候,按顺序来初始化
[b]3.构造器[/b]
class E
{
public E()
{
System.out.println("constructor");
}
}
[b]注意:[/b]基类的成员初始化先于子类