一、数据类型默认值与大小

数据类型 默认值 大小
boolean false 1比特
char ‘\u0000’ 2字节
byte 0 1字节
short 0 2字节
int 0 4字节
long 0L 8字节
float 0.0f 4字节
double 0.0 8字节
引用数据类型的默认值为null 包括数组和接口

二、比特与字节关系和换算

1.bit(比特)

比特是信息技术的最基本存储单位,二进制的一位就是1比特。

2.Byte(字节)

一个英文字符是一个字节,一个中文字符是两个字节。
1Byte(字节) = 8Bit(比特)

3、换算

1Byte = 8Bit
1KB = 1024Byte
1MB = 1024KB
1GB = 1024M
1TB = 1024GB

三、基本数据类型和引用数据类型

1.基本数据类型:

  1. 1.变量名指向具体的数值<br /> 2.基本数据类型存储在栈(stack)上

2.引用数据类型

  1. 1.变量名指向的是存储对象的内存地址,在栈(satck)上。<br /> 2.内存地址指向的对象存储在堆(heap)上

堆(heap)是在程序运行时在内存中申请的空间(动态的过程),不是在编译时。
Java的对象就存放在堆中,这样当需要一个对象时,只需要通过new关键字就可以了,当执行这行代码时,会自动在内存”堆”区分配空间,这样比较灵活。
栈(statck)能够与cpu直接关联,因此访问速度更块,所以JAVA就把对象的引用放在栈(statck)里面,因为java在编译程序时,必须明确知道存储在栈里面东西的生命周期,否则没办法释放旧的内存开辟新的内存空间存放引用。