转载出处:http://blog.csdn.net/ns_code/article/details/36034955 HashMap简介 HashMap是基于哈希表实现的,每一个元素是一个key-value对,其内部通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 HashMap是
转载
2018-05-28 13:19:00
247阅读
2评论
Hashtable简介 Hashtable同样是基于哈希表实现的,同样每个元素是一个key-value对,其内部也是通过单链表解决冲突问题,容量不足(超过了阀值)时,同样会自动增长。 Hashtable也是JDK1.0引入的类,是线程安全的,能用于多线程环境中。 Hashtable同样实现了Serializable接口,它支持序列化,实现了Cloneable接口,能被克隆。
H
转载
2018-05-28 13:30:00
152阅读
ArrayList简介 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。 ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用co
转载
精选
2014-07-02 10:51:04
387阅读
ArrayList简介 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存。 ArrayList不是线程安全的,只能用在单线程环境下,多线程环境下可以考虑用Collections.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用co
转载
精选
2016-06-08 13:56:29
481阅读
微信公众号:javafirst
注:以下源码基于jdk1.7.0_11
上一篇分析了HashMap的源码,相信大家对HashMap都有了更深入的理解。本文将介绍Map集合的另一个常用类,Hashtable。
Hashtable出来的比HashMap早,HashMap 1.2才有,而Hashtable在1.0就已经出现了。HashMap和Hashtable实现原理基本一样,都是通过哈希表实现。而且
转载
2021-08-18 13:35:29
276阅读
转自:http://www.linkedkeeper.com/detail/blog.action?bid=1045本系列文章将整理到我在GitHub上的《Java面试指南》仓库,更多精彩内容请到我的仓库里查看https://github.com/h2pl/Java-Tutorial喜欢的话麻烦点下Star哈文章将同步到我的个人博客:www.how2playlife.com本文是微信公众号【Jav
转载
2019-11-15 19:14:34
289阅读
转自http://www.linkedkeeper.com/detail/blog.action?bid=1048Spring AOP是我们日常开发中经常使用的工具,常被用来做统一的日志、异常处理、监控等功能,使用方法在此不多赘述,有兴趣的读者可以自行去网上查阅资料进行学习,我们以注解的使用方式为例,分析其相关源码,其他方式大同小异。开启Spring AOP注解方式首先要配...
转载
2021-07-18 11:27:23
490阅读
目录0x00 口水话0x01 源码版本0x02 分析工具0x03 分析方法0x04 目录结构1. Modules目录2. Python目录3. Parse目录4. Objects目录0x00 口水话由于是第一次阅读开源代码,没有相关经验,只能借助相关开发工具,以调试代码的形式对Python解释器源码调用关系、层次结构进行分析,分析过程可谓是“山穷水尽疑无路,柳暗花明又一村”。经过几番风雨
转载
2023-09-21 07:31:33
86阅读
Python源码在官网有下载链接,用ctags -R *来建符号链接,在阅读电子书的过程中用vi -t functionName/varName方便的查看对应源码 PyObjectPython对象机制的基石,Python中所有对象都拥有PyObject这一部分内容(且在对象所占内存的开头部分)PyObject其实就是一个引用计数(int)和一个类型对象指针(PyTypeObject* ob_ty
Spring源码剖析9:Spring事务源码剖析
转载
2021-07-29 13:51:24
247阅读
8.3 Python虚拟机的运行框架当Python启动后,首先会进行Python运行时环境的初始化。注意这里的运行时环境是一个与上一节剖析的执行环境不同的概念。运行时环境是一个全局的概念,而执行环境实际就是一个栈帧,是一个与某个CodeBlock对应的概念。这里不明白两者的区别不要紧,在以后剖析运行时环境初始化时我们就能弄清楚两者的区别和联系。运行时环境的初始化过程非常地复杂,后面将用
转载
2023-09-14 21:51:54
159阅读
析构时候清除pointer template <typename T> struct QScopedPointerDeleter { static inline void cleanup(T *pointer) { // Enforce a complete type. // If you get a compile
转载
2011-03-01 16:01:00
91阅读
2评论
cefsimple源码分析从前面文章我们已经知道怎么编译属于自己的
原创
2022-11-17 00:40:25
289阅读
一:功能解析函数原型:equality (1) template bool equal (InputIterator1 first1, InputIterator1 last1, InputIter
原创
2022-12-07 00:10:26
84阅读
一:功能解析函数原型:equality (1) template pair mismatch (InputIterator1 first1, InputIterator1 last1, InputIterator
原创
2022-12-07 00:10:36
84阅读
前言本篇的文章是基于Rxjava2.1.2。从下面的一段代码中,我们从源码的角度分析RxJava的实现原理:ObservableOnSubscribe<Integer>oos=newObservableOnSubscribe<Integer>(){@Overridepublicvoidsubscribe(ObservableEmitter<Integer>e)t
原创
2021-05-22 21:28:24
259阅读
前言HSF是一个分布式的远程服务调用框架,其实我更喜欢把分布式几个字去掉,因为HSF本身并不是一个单独的服务(指一个进程),他是附属在你的应用里的一个组件,一个RPC组件(远程过程调用——Remote Procedure Call
转载
2021-05-25 17:41:46
947阅读
前言
本篇的文章是基于Rxjava 2.1.2。从下面的一段代码中,我们从源码的角度分析 RxJava 的实现原理:
ObservableOnSubscribe<Integer> oos = new ObservableOnSubscribe<Integer>() {
@Override
public void subscribe(Observa
转载
2021-09-15 14:32:54
86阅读
如今,GBDT被广泛运用于互联网行业,他的原理与优点这里就不细说了,网上google一大把。但是,我自认为自己不是一个理论牛人,对GBDT的理论理解之后也做不到从理论举一反三得到更深入的结果。但是学习一个算法,务必要深入细致才能领会到这个算法的精髓。因此,在了解了足够的GBDT理论之后,就需要通过去阅读其源码来深入学习GBDT了。但是,网上有关这类资料甚少,因此,我不得不自己亲自抄刀,索
转载
2016-04-28 16:21:00
135阅读
2评论
本文是对FUSE-2.9.2源码的学习总结。FUSE代码在用户空间和内核空间都有运行,为了突出重点,先简要描述了在基于FUSE的用户空间文件系统中执行write操作的一般流程,接下来介绍了重要的数据结构,最后以FUSE的运行过程为线索,剖析FUSE程序运行过程的3个关键步骤:
转载
2023-05-08 11:42:36
613阅读