静态代码块、代码块、构造方法、普通方法&父类、子类顺序

来源:互联网 发布:优化系统 编辑:程序博客网 时间:2024/06/05 10:10

1、子类main方法的内容:

new HelloA();

控制台:

Static A 父类的静态代码块
static B 子类的静态代码块
I am A Class 父类的代码块
Hello A 父类的构造方法

2、子类main方法的内容:

new HelloA();
new HelloA();

控制台:

Static A 父类的静态代码块
static B 子类的静态代码块
I am A Class 父类的代码块
Hello A 父类的构造方法
I am A Class 父类的代码块
Hello A 父类的构造方法

3、子类main方法的内容:

new HelloB();

控制台:

Static A 父类的静态代码块
static B 子类的静态代码块
I am A Class 父类的代码块
Hello A 父类的构造方法
I am B class 子类的代码块
Hello B 子类的构造方法

4、子类main方法的内容:

new HelloB();

new HelloB();

控制台:

Static A 父类的静态代码块
static B 子类的静态代码块
I am A Class 父类的代码块
Hello A 父类的构造方法
I am B class 子类的代码块
Hello B 子类的构造方法
I am A Class 父类的代码块
Hello A 父类的构造方法
I am B class 子类的代码块
Hello B 子类的构造方法

5、子类main方法的内容:

HelloA a1 = new HelloA();
a1.m();
HelloA a2 = new HelloB();
a2.m();
HelloB b1 = (HelloB)a2;
b1.m();
HelloB b2 = new HelloB();
b2.m();


控制台:

Static A 父类的静态代码块
static B 子类的静态代码块
I am A Class 父类的代码块
Hello A 父类的构造方法
-----------HelloA m 父类的普通方法m
I am A Class 父类的代码块
Hello A 父类的构造方法
I am B class 子类的代码块
Hello B 子类的构造方法
-----------HelloB m 子类的普通方法m
-----------HelloB m 子类的普通方法m
I am A Class 父类的代码块
Hello A 父类的构造方法
I am B class 子类的代码块
Hello B 子类的构造方法
-----------HelloB m 子类的普通方法m


java version "1.8.0_66"





0 0
原创粉丝点击