栈、堆的了解

基本数据类型、局部变量都是存放在栈内存中的,用完就消失。

new创建的实例化对象及数组,是存放在堆内存中的,用完之后靠垃圾回收机制不定期自动消除。

栈和堆的特点

栈:

函数中定义的基本类型变量,对象的引用变量都在函数的栈内存中分配。

栈内存特点,数数据一执行完毕,变量会立即释放,节约内存空间。

栈内存中的数据,没有默认初始化值,需要手动设置。

堆:

堆内存用来存放new创建的对象和数组。

堆内存中所有的实体都有内存地址值。

堆内存中的实体是用来封装数据的,这些数据都有默认初始化值。

堆内存中的实体不再被指向时,JVM启动垃圾回收机制,自动清除,这也是JAVA优于C++的表现之一(C++中需要程序员手动清除)

什么是局部变量:定义在函数中的变量、定义在函数中的参数上的变量、定义在for循环内部的变量

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 基础知识 1.1、 基本概念、 功能 冯诺伊曼体系结构1、计算机处理的数据和指令一律用二进制数表示2、顺序执...
    yunpiao阅读 5,458评论 1 22
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,161评论 1 32
  • 第二天天刚刚亮,就有两只喜鹊在窝前唧唧咋咋个不停。本想睡个早觉的车振被吵醒了,用枕头蒙着头也不行,干脆起来,去健身...
    半痞阅读 293评论 1 2
  • 一、关于主人公必要的介绍 琴秋灵,女,12周岁,在天泽市花园路小学就读。身高1.5米,体重30公斤,细胳膊细...
    青鸾绣衣阅读 315评论 0 1
  • “爱而不得时,心里总是在骚动,还会自我安慰道:没办法呀,我就是喜欢呀。然后,把自己逼进爱而不得的死胡同里,接受着思...
    好坏都是人生阅读 933评论 1 3