谁能比较系统、全面的描述下java内存分配、管理机制?让大家加深对已学基本概念、原理的理解,将零散的知识框架化。
主要涉及的问题:
java主要的三种内存结构-- 方法区、栈、堆分别适用于存储哪些类型的数据?在运行效率、数据共享、灵活性等方面各自的特点。
线程与这三者之间的联系?
多线程之间如何通过这三种存储结构共享数据?
java反射的实现?
引用类型变量和对象具体在哪个存储结构中存储?如何分配内存?
局部变量和成员变量的内在区别?
定义基本类型数组和引用类型数组,初始化时,内存分配的区别?
什么情况下,将方法设计为静态化?
期待既系统又精炼的总结。
|