为什么很多类甚者底层源码要implements Serializable ? 在碰到异常类RuntimeException时,发现Throwable实现了 Serializable,还有我们平进的javabean一般也要实现Serializable,不明白为什么?做个小总结如下: public class Throwable implements Serializable { /** use serialVersionUID from JDK 1.0.2 for interoperability…
该文章是一个系列文章,是本人在Android开发的漫漫长途上的一点感想和记录,我会尽量按照先易后难的顺序进行编写该系列.该系列引用了<Android开发艺术探索>以及<深入理解Android 卷Ⅰ,Ⅱ,Ⅲ>中的相关知识,另外也借鉴了其他的优质博客,在此向各位大神表示感谢,膜拜!!!另外,本系列文章知识可能需要有一定Android开发基础和项目经验的同学才能更好理解,也就是说该系列文章面向的是Android中高级开发工程师. 系列第六篇了,,接着上一篇说,在上一篇文章中我们上了一个小…
声明:以下源代码使用的都是基于JDK1.8_112版本 1. ArrayList源码解析 <1. 集合中存放的依然是对象的引用而不是对象本身,且无法放置原生数据类型,我们需要使用原生数据类型的包装类才能加入到集合中去 <2. 集合中放置的都是Object类型,因此取出来的也是Object类型,那么必须要使用强制类型转换将其转换为真正需要的类型即放置进行的类型 ArrayList list = new ArrayList(); list.add(new Integer(4)); list.add…
List-LinkedList 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] 继上一章继续讲解,上章内容: List-ArreyLlist集合基础增强底层源码分析:https://www.cnblogs.com/StanleyBlogs/p/10396253.html List-LinkedList 首先,LinkedList底层是一个链表结构,并且是双向链表: 增删快 .查询慢 并分为 单向链表跟双向链表 单向链表 单向链表,每个元素都称之为一个节点,每个节点都由两部分组成…
List集合基础增强底层源码分析 作者:Stanley 罗昊 [转载请注明出处和署名,谢谢!] 集合分为三个系列,分别为:List.set.map List系列 特点:元素有序可重复 有序指的是元素的添加顺序,也就是说,元素被第一个存进去的时候,它就在第一位,这就是list集合的元素添加顺序: 通常情况下我们所说的有序有两个概念,第一个是添加顺序,第二个是大小顺序(实际上就是元素值的大小) List下面重点关注两个实现类分别是: ArrayList LinkedList ArrayList Ar…
目录 搭建源码环境 POM依赖 测试SQL Mybatis全局配置文件 UserMapper接口 UserMapper配置 User实体 Main方法 快速进入Debug跟踪 源码分析准备 源码分析 第一步: 将全局配置文件XML加载到Configuration对象 第二步 : 解析映射配置文件XML到Configuration的mapperRegistry容器 第三步 : 解析映射文件的Statement为MappedStatement对象 初始化完成 搭建源码环境 在这里我提一下,在早期My…
BAT资深工程师由浅入深分析Tp5&Tp6底层源码 第1章 课程简介 本章主要让大家知道本套课程的主线, 导学内容,如何学习源码等,看完本章要让小伙伴觉得这个是必须要掌握的,并且对加薪有很大的帮助. 第2章 [TP5灵魂]自动加载Loader 深度分析 本章主要讲解为什么要学习自动加载,带领大家看看TP框架的执行流程是什么样子.学习自动加载的原理以及TP5内部自动加载的代码分析.TP 结合composer相关的加载逻辑注册类库相关别名如何处理最后带领大家做实战,巩固学过的知识.... 第3章 […
第1章 课程简介 本章主要让大家知道本套课程的主线, 导学内容,如何学习源码等,看完本章要让小伙伴觉得这个是必须要掌握的,并且对加薪有很大的帮助. 第2章 [TP5灵魂]自动加载Loader 深度分析本章主要讲解为什么要学习自动加载,带领大家看看TP框架的执行流程是什么样子.学习自动加载的原理以及TP5内部自动加载的代码分析.TP 结合composer相关的加载逻辑注册类库相关别名如何处理最后带领大家做实战,巩固学过的知识.... 第3章 [你必须要掌握的配置文件]解读配置文件 本章主要讲解配置…
总结HashSet以及分析部分底层源码 1. HashSet继承的抽象类和实现的接口 继承的抽象类:AbstractSet 实现了Set接口 实现了Cloneable接口 实现了Serializable序列化接口:该接口标记此类支持序列化操作 2. HashSet底层数据结构 HashSet底层是基于HashMap实现的,HashMap底层数据结构是基于数组+链表实现的. 1. 特点 既保存了数组查询和修改元素效率快的优点,也保存了链表在添加和删除元素时效率快的特点. 存储的元素是无序的,不允许…
LInkedList总结及部分底层源码分析 1. LinkedList的实现与继承关系 继承:AbstractSequentialList 抽象类 实现:List 接口 实现:Deque 接口 实现:Cloneable 接口 实现:Serializable 接口,标记该类支持序列化 2. LinkedList的底层数据结构 LinkedList底层是基于双向链表实现的 1. 特点 链表在内存中存储空间是不连续的,只是利用相邻个节点之间的地址指向来保证存储在一条链表上的数据连续. 双向链表意思是一…