栈
栈的基本单位是帧,或栈帧
Java线程
每当一个Java线程运行的时候
Java虚拟机会为该线程分配一个Java栈
该线程在执行某个Java方法的时候,向Java栈压入一个帧
这个帧用于存储参数、局部变量、操作数、中间运算结果等。
当这个方法执行完的时候,帧会从栈中弹出
私有性
栈上的所有数据是私有的,其他线程,都不能访问该线程的栈数据
在函数中定义的一些基本类型的变量数据,和对象的引用变量
都在函数的栈内存中分配
当在一段代码块中定义一个变量时,Java就在栈中为这个变量分配内存空间
当该变量退出该作用域后,Java会自动释放掉为该变量所分配的内存空间
该内存空间可以立即被另作他用