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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 温昌寿 中级黑马   /  2012-2-21 22:26  /  2068 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

想知道static函数在内容运行是怎样被加载与清理

4 个回复

倒序浏览
静态数据对象存在于全局数据区域,程序一开始运行的时候就必须存在,因此它的加载是在函数之前,静态数据成员是属于类而非对象,只创建一次,而后对象共享。它不同于全局变量,因其只在局部有效,即该种类内;也不同于普通变量,而是所有对象共享。
回复 使用道具 举报
静态成员的生命周期最长,,它随着类的加载而加载,整个程序都可以用类名去调用,
只有当程序结束后,所有类在内存中消失,它也就随着类的消失而消失
回复 使用道具 举报
static是静态修饰符,用来修饰成员变量和成员方法。static是随着类的加载而加载。也就是说只要类在,static就会一直存在于内存中,它会随着类的消失而消失。
static所在的内存区域叫做“方法区”或者是“共享区”。被static修饰的类变量随着类的加载而存在于方法区中。
希望对你有点帮助
回复 使用道具 举报
static变量随着类的加载而加载,静态会随着;类的消失而消失,说明他的生命周期最长,他先于对象存在,静态被所有对象所共享。
static变量随着类的加载而存在于方法区中,也就是共享区中。
实例变量随着对象的建立而存在于堆内存中。
static变量生命周期最长,随着类的消失而消失。
实例变量生命周期随着对象的消失而消失。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马