A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

帮忙解释下static修饰的成员变量和成员函数在类中或者对象中的加载顺序和生命周期

3 个回复

倒序浏览
static 语句的执行时机实在第一次加载类信息的时候(如调用类的静态方法,访问静态成员,或者调用构造函数), static 语句和 static 成员变量的初始化会先于其他语句执行,而且只会在加载类信息的时候执行一次,以后再访问该类或new新对象都不会执行
而非 static 语句或成员变量,其执行顺序在static语句执行之后,而在构造方法执行之前,总的来说他们的顺序如下
1. 父类的 static 语句和 static 成员变量
2. 子类的 static 语句和 static 成员变量
3. 父类的 非 static 语句块和 非 static 成员变量
4. 父类的构造方法
5. 子类的 非 static 语句块和 非 static 成员变量
6. 子类的构造方法

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1

查看全部评分

回复 使用道具 举报
总结的很到位 呵呵 谢谢
回复 使用道具 举报
static随着类加载,生命周期:类在他在,类不在他不在。生命周期长,存在于静态方法区中
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马