java
灰灰灰灰Gray
这个作者很懒,什么都没留下…
展开
-
Java中HashMap的实现原理及常见问题
HashMap作为Map的一种实现方式,会频繁的出现的我们的代码中,那么你知道HashMap具体的工作原理,以及为什么是这样工作的吗,本篇文章将带你了解HashMap的底层原理。 首先当我们得知道HashMap的基本结构,在JDK1.8之前HashMap的结构仅仅是数组+链表,结构如下图所示。 横方向上表示的是数组,方便实现快速的定位查询。 竖方向上表示的是链表,方便产生冲突时快速的实...原创 2019-09-17 10:49:28 · 199 阅读 · 0 评论 -
详解Java中的GC机制
GC(Garbage Collections),就是垃圾回收机制。在C或C++中,开发人员需要手动的对内存进行分配和回收,需要时刻关注以防止出现内存泄漏。但在Java中,有了GC机制,程序员就不再需要对对象进行内存的回收,也不会轻易的出现内存的泄漏现象了,那么我们来研究下JVM中是如何实现GC机制的。 什么样的对象可以被认为垃圾? 首先,JVM需要判断出什么样的对象可以被判断为垃圾,这样...原创 2019-09-22 10:28:09 · 647 阅读 · 0 评论 -
详解Java中的类加载器以及机制
我们都知道Java的平台无关性是其一大特点,所谓平台无关性是指Java的源码会被编译成Class字节码文件,其字节码文件可以被不同平台上的JVM所解析然后执行,从而实现跨平台性。那么这一过程是具体是如何实现的呢? 类加载器 类加载器(ClassLoader),顾名思义就是专门用来加载类的,其作用就是将编译好的Class文件加载到JVM中。在Java中默认提供类三种类加载器: Bootstra...原创 2019-09-24 19:17:12 · 338 阅读 · 0 评论 -
不同JDK版本中String.intern()方法的区别
目录 基础知识 String.intern()解析 基础知识 在Java中创建String对象有两种方法分别为: String a = "123"; String b = new String("456"); 这两种方法有什么本质的区别呢?先来看看String a = "123";是如何生成的,其主要步骤分为两步: 1、判断常量池有没有“123”对象 2、如果有,a直...原创 2019-09-29 20:23:54 · 790 阅读 · 0 评论