毕老师所说的方法区、共享区、数据区,实际就是源于汇编语言的数据段(data segment)中的一份存储区域,。而段式存储是内存管理的一架构,这个只需了解就行。数据段是指用来存放程序中已初始化的全局变量的一块内存区域它的分配方式是静态(static)的。所以要注意的是那它即不属栈内存也不属堆内存。
此外:堆:是存放引用类型的。比如:string inStack = "在堆中";inStack 这个对象变量就是在栈中了,而它是引用类型,那么它的value就在堆中了。
栈:存局部变量,定义的参数,比如int,char之类的,以及调用现场存在栈区,在函数结束时,系统会自动收回存储单元。 |