
面试必备
文章平均质量分 56
Luna_ll
这个作者很懒,什么都没留下…
展开
-
JVM加载class文件的原理机制
Java语言是一种具有动态性的解释型语言,类(class)只有被加载到JVM中后才能运行。当运行指定程序时,JVM会将编译生成的.class文件按照需求和一定的规则加载到内存中,并组织成为一个完整的Java应用程序。这个加载过程是由类加载器来完成的,具体来说,就是由ClassLoader和它的子类来实现的。类加载器本身也是一个类,其实质是把类文件从硬盘读取到内存中。类的加载方式分为隐式加载与显...原创 2018-08-13 10:57:08 · 233 阅读 · 0 评论 -
Java中的内存泄露
Java内存泄漏引起的原因: 内存泄漏是指无用对象(不再使用的对象)持续占有内存或无用对象的内存得不到及时释放,从而造成内存空间的浪费称为内存泄漏。 长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄漏,尽管短生命周期对象已经不再需要,但是因为长生命周期持有它的引用而导致不能被回收,这就是Java中内存泄漏的发生场景。造成内存泄漏的几种情况:1、静态集合类引起内存泄漏...原创 2018-08-13 16:49:13 · 183 阅读 · 0 评论 -
HashTable和HashMap实现原理和区别
HashTable和HashMap都是map接口的实现类,这两个类的实现原理基本是一致的,都是基于数组加链表的数据结构一、实现原理:HashTable和HashMap都实现了map接口,只是HashTable继承了Dictionary抽象类而HashMap继承了AbstractMap类,他们的底层实现基本是一致的,都是基于数组(Entry类型)加链表这种数据结构实现的1、HashTab...原创 2018-08-18 16:23:46 · 859 阅读 · 0 评论 -
CocurrentHashMap的原理
ConcurrentHashMap是Java5中新增加的一个线程安全的Map集合,可以用来替代HashTable。对于ConcurrentHashMap是如何提高其效率的,可能大多人只是知道它使用了多个锁代替HashTable中的单个锁,也就是锁分离技术(LockStripping)。实际上,ConcurrentHashMap对提高并发方面的优化,还有一些其它的技巧在里面(比如你是否知道在g...原创 2018-08-18 17:52:04 · 1542 阅读 · 0 评论