4

四类八种基本数据类型

1、逻辑性 boolean(表示一位的信息)。
2、浮点型 float(32位) double(64 位)。
3、字符型 char(一个单一的 16 位 Unicode 字符)。
4、整型 byte(8位) short (16 位) int(32位) long (64 位)。

引用数据类型

除上面所属的基础数据类型外,其余都是引用数据类型。

Java数据的5种内存存储位置

1、寄存器:这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。我们对此没有直接的控制权,也不可能在自己的程序里找到寄存器存在的任何踪迹。
2、栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中。
3、堆:存放用new产生的数据。
4、静态域:存放在对象中用static定义的静态成员。
5、常量池:存放常量。
6、非 RAM 存储:若数据完全独立于一个程序之外,则程序不运行时仍可存在, 并在程序的控制范围之外。 其中两个最主要的例子便是 “流式对象” 和 “固定对象” 。

基本数据类型内存分配

声明时直接在栈内存中开辟空间,并直接在当前内存中存放数据,赋值时传递的是变量中的值,总的来说,基本数据类型是传值的。

引用数据类型内存分配

会将实际的数据存放在堆内存中,同时,在栈内存中声明一个数组名或对象名,存放着在堆内存中的是地址;

基本数据和引用数据内存分配关系图

图片描述

基本数据和引用数据对比图

图片描述

基本数据和引用数据赋值图(=)

图片描述

如果内容对你有帮助希望点赞收藏谢谢!!!


315574925
131 声望25 粉丝