java源码
修补匠·瓦力
我在思考怎么让你注意到我
展开
-
ArrayList源码分析
ArrayList中几个重要方法的实现机制: 一、add(E)的实现过程: (1)首先第一步,实例化ArrayList集合,此时的集合为一个空数组,当第一次添加参数的时候,进入ensureCapacityInternal(size+1)方法中,进来之后先判断数组是否为空,当数组为空时,就把默认长度十赋值给参数,然后进入ensureExplicitCapacity(minCapacity)方...原创 2019-02-18 10:47:22 · 109 阅读 · 0 评论 -
LinkedList源码分析
LinkedList几个重要方法的实现机制: 首先,简单介绍一下linkedList的数据结构。ArrayList与linkedList的区别在于前者是用数组实现,而后者则是使用双向循环链表结构组成,这里我就不细讲啦,对数据结构不熟悉的小伙伴可以先去熟悉一下链表的组成和特性。 一、add(E e)方法的实现过程: (1)第一步,进入linkLast(e)方法中,在这个方法中又会细分为...原创 2019-02-18 17:29:46 · 93 阅读 · 0 评论 -
JMM之volatile关键字分析
volatile关键字理解 今天抽空看了一些关于volatile的解析,让我对它的使用有了一定了解,volatile的使用场景一般用于并发条件下,属于轻量级并发锁(也可以理解为乞丐版的java并发锁)。 volatile自身有三大属性...原创 2019-05-19 23:10:41 · 172 阅读 · 0 评论 -
四、反射面试题
什么是反射? 反射是java的基本特征之一,允许运行中的java程序获取自身信息,并且可以操作类或对象的内部属性。 什么是 java 序列化?什么情况下需要序列化? (1)简单来说 序列化就是把Java对象储存在某一地方(硬盘、网络),也就是 将对象的内容进行流化。 (2)方便于传输、存储(内存中的对象状态保存到一个文件中或者数据库中;套 接字在网络上传送对...原创 2019-07-11 20:20:21 · 141 阅读 · 0 评论