堆和栈的区别
栈的介绍 :
栈的创建 : 基本类型的变量和对象的引用变量都在函数的栈内存中分配。
基本类型(primitive types), 共有8种,即int, short, long, byte, float, double, boolean, char(注 意,并没有string的基本类型)。
栈的优点 : 存取速度比堆快,栈数据可以共享。
栈的缺点 : 存放在栈中的数据占用多少内存空间需要在编译时确定下来,缺乏灵活性。
堆的介绍 :
堆的创建 : 创建new对象和数组。
堆的优点 : 是可以动态地分配内存空间,需要多少内存空间不必事先告诉编译器,因为它是在运 行时动态分配的。
堆的缺点 : 需要在运行时动态分配内存,所以存取速度较慢。