# 内存空间
* 基础数据类型,在栈内存中维护,引用数据类型,在堆内存中维护。
## 原始数据类型和引用数据类型类型的区别
1. 存储位置不同:原始数据类型存储在栈中,占据空间小,大小固定,属于频繁使用数据。引用数据类型存储在堆中,占据空间大,大小不固定。
2. 传值方式不同:基本数据类型按值传递,无法改变一个基本数据类型的值。引用数据类型:按引用传递,引用类型值可改变。
3. 基本数据类型是直接存储在栈内存中的,而引用数据类型,则仅仅是把地址存储在栈内存中,真正的数据是存储在堆内存中的,赋值操作时,仅仅把地址进行了赋值。
## 栈数据结构
* 先进后出 后进先出
## 堆数据结构
* 堆数据结构是一种树状结构。
## 队列
* 先进先出