Java源码分析》:Vector虽然,Vector集合在我们的编程中,使用的比较少,至少我使用的比较少,一般情况下,我都是倾向于使用List来存储一些同类型的元素。其实,Vector的内部实现和ArrayList的内部实现基本一致,内部都是借助于数组来实现的。下面就一起来分析下。1、Vector的继承结构public class Vector<E> extends A
转载 3月前
17阅读
我们都知道Hibernate可以支持多种数据库,这种支持是通过对于不同数据库,配置对应数据库的方言完成的。在早期的Hibernate中,需要通过配置hibernate.dialect参数,指定当前使用的数据库方言。对于需要同时支持多种数据库的产品来说,每切换一个数据库,就要重新配置以下dialect参数会显得很麻烦。于是,DialectResolver工厂类就诞生了。简单的说,DialectRes
转载 2012-09-30 00:56:00
547阅读
2评论
java ArrayList 源码解读 ArrayList 类有三个构造方法,分别为无参构造方法,传int构造方法,和传集合构造方法 /** * Constructs an empty list with an initial capacity of ten. */ public ArrayList ...
转载 2021-08-01 17:35:00
198阅读
2评论
java ArrayList 源码解读 ArrayList 类有三个构造方法,分别为无参构造方法,传int构造方法,和传集合构造方法 /** * Constructs an empty list with an initial capacity of ten. */ public ArrayList ...
转载 2021-08-01 17:36:00
118阅读
2评论
概述先来回顾一下java中的等待/通知机制我们有时会遇到这样的场景:线程A执行到某个点的时候,因为某个条件condition不满足,需要线程A暂停;等到线程B修改了条件condition,使condition满足了线程A的要求时,A再继续执行。自旋实现的等待通知最简单的实现方法就是将condition设为一个volatile的变量,当A线程检测到条件不满足时就自旋,类似下面:public clas
转载 2023-06-15 08:16:48
44阅读
Java集合类源码分析〇、说明一、Object类1. 继承结构2. 构造方法3. 常用方法和参数5. native关键字二、ArrayList类0. 数据结构1. 继承结构2. 构造方法3. 常用方法和属性三、LinkedList类0. 数据结构1. 继承结构2. 构造方法3. 常用方法和属性四、 HashMap类0. 数据结构1. 继承结构2. 构造方法3. 常用方法和参数 〇、说明集合类特性
转载 2023-07-19 17:04:58
48阅读
读代码千万不能为了读代码而读代码,什么意思呢,就是不要把读代码当成学习的课程一样,一行一行的,一段一段的,按部就班的看,而是跳跃式的看代码,形成一个功能脉络的记忆在脑海里,然后顺着这个脉络,各个击破,根据经验,要形成一个脉络,最后给自己设定一些问题,带着这些问题去看代码,就像有个线索一样,沿着这些问
转载 2018-05-30 06:51:00
363阅读
2评论
vue源码目录 vue/src/core/util/next-tick.js nextTick 入参是一个回调函数,这个回调函数就是一个任务 每次接受任务nextTick不会立即执行,而是把它push到callbacks这个异步队列里 检查pending的值,如果为false,意味着“现在还没有一个 ...
转载 2021-10-22 16:35:00
256阅读
2评论
1、先说一下源码解析的过程:JDK-->JRE-->JVM(以openJDK代替)注意:这里要了解jdk和jre和jvm他们分别是什么?以及他们的关系才可以继续。这里先上一章从网上下载的关系图方便理解2、笔者本地的jdk是oraclejdk,jvm所在位置就是安装的jdk。jdk下jre下bin下server下的jvm.dll。也就是F:\Java\jdk\jdk1.7.0_60\jr
转载 2023-07-20 23:44:05
152阅读
最近一直在研究AQS的源码,希望可以更深刻的理解AQS的实现原理。虽然网上有很多关于AQS的源码分析,但是看完以后感觉还是一知半解。于是,我将自己的整个理解过程记录下来了,希望对大家有所帮助。基本原理AQS是Java中锁的基础,主要由两个队列组成。一个队列是同步队列,另一个是条件队列。同步队列的原理同步队列的队列头部是head,队列尾部是tail节点,head节点是一个空节点,同步队列是一个双向链
HashMapHashMap简介底层实现存储结构核心函数无参构造带参构造hash()函数put()函数resize() 函数分析链表分组原理get()函数remove()函数tableSizeFor()函数迭代器HashMap线程不安全问题分析resize()死循环过程分析原因分析补充概念以及面试题先说说我的见解hash碰撞为什么table的长度是2的幂次方什么HashMap中要对原hashCo
转载 2023-09-04 15:15:45
42阅读
    用mongdb也大半年了,一直是业务上的逻辑实现了就ok。然而这样并不能进步……因此今天查了查java连接mongodb驱动的源码,搜到的各种信息整合一下,方便以后深入的使用。    先贴连接数据库代码 List<ServerAddress> replicaSet =&
原创 精选 2016-04-14 18:09:17
1254阅读
文章目录概述方法的执行效率概述从类的继承图上我们可知道,ArrayList实现了List接口。同时List是顺序容器,即元素存放的数据与放进去的顺序相同,允许放入null元素,ArrayList底层基于数组实现。每个ArrayList都有一个容量(capacity),表示底层数组的实际大小,容器内存储元素的个数不能多于当前容量。当向容器中添加元素时,如果容量不足,容器自动扩容。ArrayList<E>,可以看到是泛型类型, Java泛型只是编译器提供的语法
原创 2021-11-16 10:26:38
6509阅读
文章目录PrePriorityQueue 概述PreJava Review - ArrayList 源码解读Java Review - LinkedList源
原创 2022-01-12 10:03:43
448阅读
文章目录Pre概述PreJava Review - ArrayList 源码解读概述从上图可知: LinkedList同时实现
原创 2022-01-12 10:13:23
492阅读
文章目录PrePriorityQueue 概述PreJava Review - ArrayList 源码解读Java Review - LinkedList源码解读Java Review - Queue和Stack 源码解读PriorityQueue 概述Java Review - Queue和Stack 源码解读Java ArrayDeque为例讲解了Stack和Queue,还有一种特殊的队列叫做PriorityQueue,即优先队列。优先队列的作用是能保证每次取出的元素都是队列中权
原创 2021-11-16 10:26:37
5350阅读
文章目录Pre概述PreJava Review - ArrayList 源码解读概述从上图可知: LinkedList同时实现了List接口和Deque接口,既可以看作一个顺序容器,又可以看作一个队列(Queue),同时又可以看作一个栈(Stack) 。当需要使用栈或者队列时,可以考虑使用LinkedList,一方面是因为Java官方已经声明不建议使用Stack类,更遗憾的是,Java里根本没有一个叫做Queue的类(它是个接口名字)。关于栈或队列,现在的首选是ArrayDeque
原创 2021-11-16 10:26:38
6557阅读
文章目录概述方法的执行效率概述从类的继承图上我们可知道,ArrayList实
原创 2022-01-12 10:14:38
448阅读
前言之前我们通过图片讲解了Mybatis底层原理,今天我们就从源码入手去解读下Mybatis这个持久化框架是如何执行SQL的这个完整过程。老样子,我们在看源码之前先写下demo,参考官方文档进行编写即可。mysql5.7\mybatis1.3.9\springboot项目mybatisdemoUser表的model类packagecom.ckmike.mybatisdemo.model;impor
subprocess模块源码介绍
原创 2019-09-11 10:44:16
1197阅读
  • 1
  • 2
  • 3
  • 4
  • 5