黑马程序员技术交流社区

标题: Java面试之内存机制 [打印本页]

作者: 庭院深深深几许    时间: 2019-4-18 13:48
标题: Java面试之内存机制
  JAVA 中堆和栈的差异,说下java 的内存机制
  a.底子数据类型比变量和目标的引用都是在栈分配的
  b.堆内存用来寄存由new创建的目标和数组
  c.类变量(static修饰的变量),程序在一加载的时分就在堆中为类变量分配内存,堆中的内存地址寄存在栈中
  d.实例变量:当你运用java关键字new的时分,系统在堆中开荒并不一定是连续的空间分配给变量,是根据零散的堆内存地址,通过哈希算法换算为一长串数字以表征这个变量在堆中的”物理方位”,实例变量的生命周期–当实例变量的引用丢掉后,将被GC(废物回收器)列入可回收“名单”中,但并不是马上就开释堆中内存
  e.局部变量: 由声明在某办法,或某代码段里(比如for循环),实行到它的时分在栈中开荒内存,当局部变量一但脱离作用域,内存当即开释



 传智播客Java培训是Java培训佼佼者,口碑良好的java培训学校,并提供Java培训,JavaEE培训,Java培训班,Java工程师培训,Java程序员培训,Java开发,Java编程服务。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2