- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 jvm的永久代
记得曾经在课本上看到了永久代的概念,但是没有看过在哪里会有用到,最近准备面试,想深入的了解永久代到底是什么jvm的语言规范里面定义了方法区(为了区分叫做“非堆”)的概念,方法区主要用于存储类的信息、常量池、方法数据、方法代码等信息。但是不同的虚拟机有不同的实现,其中hotspot实现通过永久代来实现了方法区。在java代码中如果在一个while循环里面不停的创造对象的话就会发生永久代溢出。
2017-10-22 18:21:29 651
原创 java内存分配规则
1、对象优先分配在Eden区,如果Eden区没有足够的空间时,虚拟机执行一次Minor GC(执行前会判断是否是执行full gc 还是 minor gc)2、大对象(需要大量连续内存空间的对象)直接进入老年代。这样可以避免大对象在Eden和Survivor之间来回的拷贝3、长期存活的大对象进入老年代。在survivor区的对象每经过一次minor gc存活下来,年龄就加1。等到年龄达到阈
2017-10-19 22:36:30 215
原创 java的垃圾回收机制
面试的时候都会问道,说一下java的垃圾回收机制吧?每次说的时候总觉得这个好广泛啊,需要从哪里开始说起呢?还是从why、what、 where 、when、how 5个方面来说明:为什么需要垃圾回收(why)? 不回收会出现内存溢出和内存泄漏的发生。(java的内存中哪些会发生内存泄漏,哪些会发生栈溢出)什么是垃圾回收(what)?java程序员在编写代码的时候不再需要考
2017-10-19 20:21:14 172
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人