- 博客(2)
- 收藏
- 关注
原创 成员变量和类变量的区别
不同的对象的实例变量将被分配不同的内存空间, 如果类中的成员变量有类变量,那么所有对象的这个类变量都分配给相同的一处内存,改变其中一个对象的这个类变量会影响其他对象的这个类变量,也就是说对象共享类变量。静态变量数据存储在方法区(共享数据区)的静态区,所以也叫对象的共享数据。所以,成员变量可以称为对象的特有数据,静态变量称为对象的共享数据。成员变量存储在堆内存的对象中,所以也叫对象的特有数据。成员变量随着对象的创建而存在,随着对象的回收而释放。静态变量随着类的加载而存在,随着类的消失而消失。
2023-12-08 15:11:09
92
原创 heap和stack有什么区别
在堆中产生了一个数组或对象后,还可以在栈中定义一个特殊的变量,让栈中这个变量的取值等于数组或对象在堆内存中的首地址,栈中的这个变量就成了数组或对象的引用变量。引用变量就相当于是为数组或对象起的一个名称,以后就可以在程序中使用栈中的引用变量来访问堆中的数组或对象。2、实例变量:当你使用java关键字new的时候,系统在堆中开辟并不一定是连续的空间分配给变量(比如说类实例),然后根据零散的堆内存地址,通过哈希算法换算为一长串数字以表征这个变量在堆中的”物理位置”。1、堆(heap)的空间一般由程序员分配释放;
2023-12-08 14:55:30
216
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅