数据结构
一 概述
1.什么是数据结构?
数据结构是数据在内存中的存储结构,包含可接收类型、空间大小、数据提取方式、数据销毁方式、数据共享等方面。
二 JVM内存
1.栈:
- 数据类型:局部变量,包含基本数据类型变量与对象的引用变量。
- 栈中的每一个元素都叫做帧,元素进栈叫做压栈,元素出栈叫做弹栈。
- 共享规则:栈内部的数据在内部共享,不同栈之间不共享数据。
- 一个线程一个栈,栈中的数据线程安全。
- 方法只有在调用时,才在栈中分配存储空间。
- 系统自动释放内存,无需设计者参与。
- 提取规则:后进先出。
2.堆:
- 数据类型:存放new关键字创建的对象与数组。
- 堆中对象包含的内容:成员变量。
- 共享规则:堆中数据为个线程共享。
3.方法区:
- 存放类信息、静态变量、常量。
- 多线程共享。
三 变量
- 变量是内存中的一块存储空间,有名称、数据类型与引用。引用指向某个数据的内存地址。
- 变量与变量赋值:一个变量给另一个变量赋值,将自身的引用传递给该对象,两者指向内存中同一块区域。
不能仅仅停滞在实现上,应该去追求代价更小、性能更优的实现