//子类创建 先调用父类的 构造器, 调用父类构造器之前,先看有没有静态化方法(包括父子所有 先父类 再子类),父类的实例变量初始化之后才父类的构造器。
//同理子类的 实例变量初始化后才子类的构造器。
public class ChildObjectTest extends Parent{
private int k;
private static int b;
{
System.out.println("kkk");
k++;
}
static {
b = b+19;
System.out.println("b===="+b);
}
{
System.out.println("tt");
k++;
System.out.println(k);
}
public ChildObjectTest(){
System.out.println("childObjectTest....");
}
public static void main(String[] args) {
new ChildObjectTest().test();
new ChildObjectTest().test2();
}
public void test(){
System.out.println(k);
System.out.println(b);
}
public void test2(){
System.out.println("test2...........static is only ..........initializing for everyone......");
}
}
class Parent{
//静态代码块
static{
System.out.println("supper static");
}
//实例变量初始化
{
System.out.println("supper initializing ");
}
public Parent(){
System.out.println("supper parent");
}
}
------------------------------------------------------------
supper static
b====19
supper initializing
supper parent
kkk
tt
2
childObjectTest....
2
19
supper initializing
supper parent
kkk
tt
2
childObjectTest....
test2...........static is only ..........initializing for everyone......