欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

浅析Java的内存分配

程序员文章站 2022-03-16 16:07:39
...
Java的内存分配上,主要分4个块!
一块是用来装代码的,就是编译的东西。
一块是用来装静态变量的,例如用static关键字的变量,例如字符串常量。
一块是stack,也就是栈,是用来装变量和引用类型的!但区别在于,装了变量以后,变量上是有值的,而引用类型本身在stack上是没有值的。
一块是heap,也就是堆!堆可以一句话概括,装new出来的东西!

所以综上所述,基本数据类型都在stack中,而引用类型,变量是放在stack中,真正有内容的东西放在heap中,也就是当new了一个新的引用类型,他就会放在堆中,同时栈中的引用类型变量会指向堆中你new出来的东西!
两种数据类型:

1)基本数据类型
整数类型(byte/short/int/long)
浮点类型(float/double)
字符类型(char)
布尔类型(boolean)
2)引用类型:类/接口/数组
另外附上2点笔记:
1.初始化java数组的两种方式:
静态(给定元素)和动态(给定长度)
2.java数组的静态特性:
java数组(对象)初始化之后,数组长度不可变;数组对象是创建数组时内存分配的一块空间;

初始化:为数组元素分配内存空间,并为每个元素指定初始值;

以上就是浅析Java的内存分配的详细内容,更多请关注其它相关文章!