深入理解栈
栈:数据结构
程序=数据结构+算法:持续学习
程序=框架+业务逻辑:吃饭
栈:先进后出,后进先出
队列:先进先出(FIFO:First Input First Output)
栈:栈内存,主管程序的运行生命周期与线程同步
线程结束,栈内存也就是释放,对于栈来说,不存在垃圾回收问题
一旦线程结束,栈就Over!
栈:8大基本类型+对象引用+实例的方法
栈运行原理:栈帧
栈满了:StackOverflowError
栈的内脏:(上面的绿色部分叫栈顶,下面的黄色部分叫栈底)
程序正在执行的方法,一定在栈的顶部
栈+堆+方法区:交互关系(红色部分(方法区)的蓝色区域为常量池)
实例化在内存中的过程:将引用名放入栈,在堆里面实例化一个类,引用指向这个类,实例化完成