Java类中代码的执行顺序 静态代码块>构造代码块>构造方法
2017-03-20 11:36
561 查看
一:静态代码块
注意是代码块,不是静态函数。函数要调用才执行,代码块加载就执行,一般是静态变量的声明与初始化、被static修饰的代码块(赋值、输出操作等)。类中静态语句块仅在类加载时被执行一次
如 static int a=1;
static { int b=2;
System.out.print(b);}
二:构造代码块
构造代码块是指不在类的任何一个方法中的代码。一般为全局变量的声明与初始化、顺序执行的输出语句等等。如果没有static修饰的话,这些代码按照编码时顺序执行。
Java会把构造代码块放到每种构造方法的前面(乱序执行),用于实例化一些共有的实例变量,减少代码量。
三:构造方法
类的构造方法。
在涉及继承时执行顺序为:父类静态代码块——子类静态代码块——父类构造代码块——父类构造函数——子类构造代码块——子类构造函数(除了静态的,构造代码块和构造函数都是先执行父类的!)
注意是代码块,不是静态函数。函数要调用才执行,代码块加载就执行,一般是静态变量的声明与初始化、被static修饰的代码块(赋值、输出操作等)。类中静态语句块仅在类加载时被执行一次
如 static int a=1;
static { int b=2;
System.out.print(b);}
二:构造代码块
构造代码块是指不在类的任何一个方法中的代码。一般为全局变量的声明与初始化、顺序执行的输出语句等等。如果没有static修饰的话,这些代码按照编码时顺序执行。
Java会把构造代码块放到每种构造方法的前面(乱序执行),用于实例化一些共有的实例变量,减少代码量。
三:构造方法
类的构造方法。
在涉及继承时执行顺序为:父类静态代码块——子类静态代码块——父类构造代码块——父类构造函数——子类构造代码块——子类构造函数(除了静态的,构造代码块和构造函数都是先执行父类的!)
相关文章推荐
- 关于java代码中静态代码块、非静态构造代码块以及构造方法的执行顺序
- java静态代码块和构造方法执行顺序
- java静态代码块、初始化块和构造方法的执行顺序解析
- 学习总结:java面试方法重写详解,静态代码块和构造方法执行顺序问题
- [java起步]构造函数、构造代码快、静态代码块的执行顺序
- Java静态代码块、构造代码块、构造方法的执行顺序
- JAVA父类子类静态代码块、静态变量、构造方法的执行顺序
- java 静态代码块 构造代码块 构造方法的执行顺序
- Java初学者Paulmarkyes---中静态代码块,普通代码块,构造代码块,构造方法先后执行顺序以及区别
- Java子父类间静态代码块、构造代码块、构造方法的执行顺序
- Java继承中父类子类构造方法、静态代码块、非静态代码块的执行顺序
- java静态代码块/静态属性、构造块、构造方法执行、main方法、普通代码块的顺序
- java静态代码块、初始化块和构造方法的执行顺序
- java静态代码块、初始化块和构造方法的执行顺序
- Java static属性和静态代码块和构造方法等的执行顺序探讨
- 【JAVA】探究JAVA父类子类静态代码块、静态变量、构造方法的执行顺序
- 【转】java静态代码块和构造方法执行顺序
- java静态代码块和构造方法执行顺序
- java静态代码块、初始化块和构造方法的执行顺序
- 关于java中子类,父类中,静态代码块: staic{},动态代码块:{},构造方法,类属性,对象属性等执行顺序做个总结: