1、栈的特点:先进后出,后进先出。
2、职责:主管程序的运行,和线程的生命周期相同。线程结束,栈内存就释放,所以对于栈来说不存在垃圾回收。
3、存储元素:8大基本类型、引用类型的变量、实例的方法。
4、当把方法压入栈的时候,一个方法就是一个栈帧,最先调用的方法最先压入,最后d出,比如:在Java的main方法中调用了一个add方法,则是先将main方法压入栈,再压入add方法,当add方法执行完之后,先d出add方法,再执行main方法,最后d出main方法,保证当前正在执行的方法,一定处于栈的顶端。
5、每个栈帧的组成:方法索引index、输入输出参数、本地变量、Class File、父帧、子帧,具体情况参考下图:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)