标签:ase class 类加载器 tca es2017 print nbsp 地方 win
os :windows7 x64
jdk:jdk-8u131-windows-x64
ide:Eclipse Oxygen Release (4.7.0)
代码:
//父类 class Father { //静态代码块 static { System.out.println("父类的静态代码块"); } //构造代码块 { System.out.println("父类的构造代码块"); } public Father() { System.out.println("父类的构造函数"); } } class Son extends Father { //静态代码块 static { System.out.println("子类的静态代码块"); } //构造代码块 { System.out.println("子类的构造代码块"); } public Son() { //默认会去调用 父类的无参构造函数 System.out.println("子类的构造函数"); } } class Demo { public static void main(String[] args) { //这么多块,谁先执行呢? Son s1 = new Son(); /* * 类加载器主管类的加载工作,静态代码块会在类的加载时 运行。 * 类加载器发现 Son作为子类,存在父类,所以会先去加载父类,所以父类的静态代码块会先运行。 * 加载完父类之后,才会回过来加载子类。所以,子类的静态代码块会后运行。 * 仅供参考... */ } }
结果:
Java优秀,值得学习。
学习资源:itcast视频库。如果您有公开的资源,可以分享给我的话,用您的资源学习也可以。
博文是观看视频后,融入思考写成的。博文好,是老师讲得好。博文坏,是 给最苦 没认真。
如果您觉得博文有可以改进的地方,留言即可。
JavaSE8基础 父子类中都有静态代码块与构造代码块,执行顺序的简单示例
标签:ase class 类加载器 tca es2017 print nbsp 地方 win
原文地址:http://www.cnblogs.com/jizuiku/p/7466583.html