Java代码中代码块的执行顺序
2017-09-04 11:37
225 查看
没有父类的情况:
实现自身的静态属性和静态代码块.(根据代码出现的顺序执行)
实现自身的非静态属性和非静态代码块.
执行自身的构造函数
有继承类的情况:
实现父类的公共静态属性和静态代码块代码
实现自身的静态属性和静态属性代码块代码
实现父类非静态属性和非静态代码块
执行父类的构造函数
实现自身的非静态属性和非静态代码块
执行自身的构造函数
以下代码对第二种情况进行验证:
students1用作父类,students2继承students1进行验证.
运行结果:
实现自身的静态属性和静态代码块.(根据代码出现的顺序执行)
实现自身的非静态属性和非静态代码块.
执行自身的构造函数
有继承类的情况:
实现父类的公共静态属性和静态代码块代码
实现自身的静态属性和静态属性代码块代码
实现父类非静态属性和非静态代码块
执行父类的构造函数
实现自身的非静态属性和非静态代码块
执行自身的构造函数
以下代码对第二种情况进行验证:
package test; /** *@author xpengfei *@creat 2:49:53 PM Aug 31, 2017 */ public class students1 { public students1(){ System.out.println("students1的构造函数!"); } { System.out.println("这是Students1中的一段代码块!"); } static{ System.out.println("这是students1中的一段静态代码块!"); } }
students1用作父类,students2继承students1进行验证.
package test; /** *@author xpengfei *@creat 2:51:08 PM Aug 31, 2017 */ public class students2 extends students1{ public students2(){ System.out.println("students2的构造函数.hello students2!!"); } { System.out.println("这是students2中的一段代码块!"); } static{ System.out.println("这是students2中的一段静态代码块!"); } public static void main(String[] args) { students2 s=new students2(); } }
运行结果:
相关文章推荐
- Java 普通代码块静态代码块执行顺序(实例讲解)
- java中代码执行顺序(静态代码块、构造函数)
- Java类中代码的执行顺序 静态代码块>构造代码块>构造方法
- 关于java代码中静态代码块、非静态构造代码块以及构造方法的执行顺序
- Java代码执行顺序(静态变量,非静态变量,静态代码块,代码块,构造函数)加载顺序
- Java普通代码块,构造代码块,静态代码块,成员变量的执行顺序的代码实例
- Java普通代码块,构造代码块,静态代码块区别,执行顺序的代码实例
- [java起步]构造函数、构造代码快、静态代码块的执行顺序
- jsp中java代码、jsp代码、js代码执行的顺序
- 【Java基础知识】代码块的执行顺序(静态、构造、局部代码块)
- Java(静态)变量和(静态)代码块的执行顺序
- Java 父类,子类各自均有构造器和静态代码块 执行的顺序
- Java中创建对象的时候代码执行顺序
- Java静态代码块、构造代码块、构造方法的执行顺序
- Java静态代码块和构造方法执行顺序
- java中父类的静态代码块,非静态代码块,构造方法,子类的静态代码块,构造方法等先后执行顺序
- Java中静态代码块以及构造方法等执行顺序
- Java面试系列(一):代码的执行顺序
- Java代码执行顺序
- 由阿里巴巴一道笔试题看Java静态代码块、静态函数、动态代码块、构造函数等的执行顺序