黑马程序员技术交流社区

标题: static修饰的成员变量和成员函数的加载 [打印本页]

作者: ╰繼/aiq戀い    时间: 2014-6-22 18:05
标题: static修饰的成员变量和成员函数的加载
帮忙解释下static修饰的成员变量和成员函数在类中或者对象中的加载顺序和生命周期
作者: 轩辕冰晨    时间: 2014-6-22 18:11
static 语句的执行时机实在第一次加载类信息的时候(如调用类的静态方法,访问静态成员,或者调用构造函数), static 语句和 static 成员变量的初始化会先于其他语句执行,而且只会在加载类信息的时候执行一次,以后再访问该类或new新对象都不会执行
而非 static 语句或成员变量,其执行顺序在static语句执行之后,而在构造方法执行之前,总的来说他们的顺序如下
1. 父类的 static 语句和 static 成员变量
2. 子类的 static 语句和 static 成员变量
3. 父类的 非 static 语句块和 非 static 成员变量
4. 父类的构造方法
5. 子类的 非 static 语句块和 非 static 成员变量
6. 子类的构造方法
作者: ╰繼/aiq戀い    时间: 2014-6-22 18:24
总结的很到位 呵呵 谢谢
作者: 18353666072    时间: 2014-6-22 19:31
static随着类加载,生命周期:类在他在,类不在他不在。生命周期长,存在于静态方法区中




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2