大学的时候 程序=算法+数据结构
实际开发中 程序=框架+业务逻辑
数据结构中队列和栈必须要懂
队列(FIFO) 先进先出 例子:排队打饭
栈(FILO)(后进先出)例子:子弹弹夹
栈也叫栈内存,主管java程序的运行,是在线程创建时创建,它的生命周期是跟随线程的生命周期,线程
结束内存也就释放了,对于栈来说不存在垃圾回收问题,只要线程一结束栈就Over,生命周期和线程一致,
是线程私有的。
8种基本类型的变量+对象的引用变量+实例方法的都是在栈内存中分配。
栈帧
java 方法被仍进栈中,它就变成了栈帧(说白了就是在java中叫方法,压到栈里就叫栈帧)
堆、栈、方法区之间的调用
Person person =new Person();
person 这个引用存在栈里
new 出来的对象在堆里
在堆里存储了元数据的地址(也就是那个大Class(对象模板)),相当new对象的时候要有模板