黑马程序员技术交流社区
标题:
关于变量作用域的总结
[打印本页]
作者:
李斌
时间:
2012-4-19 08:35
标题:
关于变量作用域的总结
1. 类的静态变量在内存中只有一个。静态变量位于方法区,被类的所有实例共享。静态变量的生命周期取决于类的生命周期(即类何时被加载和卸载)。
2. 类的每个实例都有相应的实例变量。实例变量位于堆区中。实例变量的生命周期取决于实例的生命周期(即实例何时被创建及销毁)。
3. 假如成员变量(包括静态变量和实例变量)是引用变量,那么当该成员变量结束生命周期时,并不意味着它所引用的对象也一定结束生命周期。变量的生命周期
和对象的生命周期是两个不同的概念。
4. 局部变量位于栈区,其生命周期取决于所属的方法何时被调用及结束调用。
总结一下:
局部变量位于栈区,静态变量位于方法区,实例变量位于堆区,方法的字节码位于方法区,对象本身位于堆区,对象的引用位于栈区。
作者:
黄或俊
时间:
2012-4-19 08:52
谢谢分享,学习啦!~
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2