您的位置:首页 > 其它

关于构造快执行顺序

2017-11-02 16:08 204 查看
1

class B{

//成员变量的位置
public static B t1 = new B() ; 1
public static B t2 = new B() ;  2

{
System.out.println("构造代码块");
}

static{  3
System.out.println("静态代码块!");
}
}
public class Demo1 {
public static void main(String[] args) {

B b = new B() ;//构 构 静 构 4

//静态代码块 ,构造代码块,构造方法的优先级问题:
//静态代码块>构造代码块>构造方法...
}
}
执行结果:构造代码块
构造代码块
静态代码块!
构造代码块
分析:并不是静态代码块最先初始化的,而是静态域,静态域包括 静态块,静态变量,静态方法,其中需要初始化的是静态块和静态变量,他们执行的顺序和所在的顺序有关,静态域的执行顺序优先于main方法,所以顺序是1234 执行,构造快是new 对象时候执行


2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  执行顺序
相关文章推荐