8.1 什么是数据类型
Java程序在运行时,JVM会为有初始值的变量分配合适的内存空间保存数据,决定程序在运行时给变量分配多大内存空间的就是变量的数据类型,即Data Type。变量的数据类型锁确定的内存大小方便系统分配空间。
在后续介绍数据类型所需存储空间时会涉及到数据存储单位。
在计算机中,存储单位可以分为以下两种:
- 位:bit,也称为比特,是数据存储最小的单位,每个位只能存储一个二进制值,即0或1;位的数量决定了可以表示的数据范围,比如:一个4位的二进制数可以表示16种不同的状态(2的4次方)。
- 字节:byte,1个字节可以存储8个位组成的数据。
小常识:日常我们习惯使用1T,4T这样的容量来表示一款硬盘的容量,但是实际上在使用时,系统中显示的并没那么大。究其原因就是硬盘制造商和计算机系统在计算容量时使用了不同的进制。
比如下面的1T大小的硬盘,制造商通常采用十进制单位进行计算。也就是说,他们认为1KB=1000Byte,1MB=1000KB,1GB=1000MB,以此类推。因此,当你看到硬盘上标注的1TB时,它实际上是按照1000的三次方(即1,000,000,000,000Byte)来计算的。然而,操作系统为了与计算机内部的二进制系统保持一致,采用的是二进制单位来计算存储容量。在这里,1KB=1024Byte,1MB=1024KB,1GB=1024MB,以此类推。因此,当我们用操作系统去查看硬盘容量时,它实际上是以二进制单位(GIB,即Gibibyte)来显示的。
8.2 Java中的数据类型
Java的数据类型可分为基本数据类型与引用数据类型两大类型。其中基本数据类型包括了最基本的byte、short、int、long、float、double、char、boolean等8种类型。另一种为引用数据类型(类似于C、C++语言的指针)。这两种类型的数据在存储和使用时有较大的差别。数据类型的划分如图:

8.3 基本数据类型与引用数据类型
Java中的基本数据类型只有8种,其特点就是:
- 基本数据类型声明的变量,它的值就是数据,存放在栈(Stack)中
- 不能像引用数据类型的变量一样有属性或方法
- 基本数据类型的变量只能使用字面量赋值
除了8中基本数据类型其他的都是引用数据类型,它的特点是:
- 引用数据类型的变量存储的是数据在内存中的地址值,数据本身存放在堆(Heap)中
- 具有自己属性或方法
- 除String和包装类,引用数据类型的变量不能使用字面量赋值
8.4 小结
本小节介绍了Java中数据类型的概念及作用,并对Java中数据类型进行了分类,也简要介绍了基本数据类型与引用数据类型的特点及区别。


556

被折叠的 条评论
为什么被折叠?



