-
大体上顺序是这样的:(也可以说是优先级,同一级的按顺序执行)
1 静态变量,静态代码块
2 实例变量,实例代码块
3 构造函数
- public class Test{
- public Test(){
- System.out.println("构造方法被执行 5");
- }
- {
- System.out.println("实例代码块被执行 3"); //实例代码块
- }
- private TestInstance ti = new TestInstance(); //实例变量
- private static TestInstance ti1 = new TestInstance(1); //静态变量
- static{
- System.out.println("静态代码块被执行 2"); //静态代码块
- }
- public static void main(String[] args){
- new Test();
- }
- }
- class TestInstance{
- public TestInstance(){
- System.out.println("实例变量被构造 4");
- }
- public TestInstance(int i){
- System.out.println("静态变量被构造 1");
- }
- }
关于静态变量,静态代码块,实例变量,实例代码块,构造函数的执行顺序
最新推荐文章于 2021-03-09 17:22:04 发布