框架md模板
发表于|更新于|Java框架
1. 目录
[TOC]
2. 说明
3. 依赖分析
4. 源码分析
5. 总结
6. 注意事项
文章作者: kewen
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 KewenBlogs!
相关推荐

2023-07-07
HashMap解析
说明 底层采用数组+链表的数据结构存储 默认初始16容量,每次扩容2倍,加载因子0.75(即到了最大容量的0.75倍就开始扩容,因为过大的时候hash碰撞严重 自定义容量会按照向上取最近2^n数量定义初始容量,如new...

2023-07-08
ConcurentHashMap解析
说明ConcurrentHashMap并发容器 采用 cas自旋、while/for死循环、sychronize锁三种方式保证线程竞争下的插入安全,其原理与HashMap并不相同,改动量比较大 jdk7采用分段segament的概念,把数组分为几段,每次锁一段达到并发的目的,但是分段会多维护一次hash jdk8采用锁数组的节点Node,将链表或红黑树整个锁定,达到线程安全。jdk8的精髓就在于没有node节点的时候数据的并发插入,它并没有阻塞线程,而是cas重试 源码解析Jdk8源码putValue()1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980final V putVal(K key, V value, boolean onlyIfAbsent) { //第一部分 ...

2023-07-07
反射
1. 反射定义2. 反射方法2.1. 获取集合对象中泛型的类型[^获取集合对象中泛型的类型] 泛型的概念 泛型概念 泛型:参数化类型,也就是说要操作的数据一开始不确定是什么类型,在使用的时候,才能确定是什么类型,把要操作的数据类型指定为一个参数,在使用时传入具体的类型,实现代码的模板化。 获取集合泛型时遇到的问题 在学习JDBC设计BaseDao<T>时类遇到了一个需要在创建子类对象时给父类BaseDao<T>赋上泛性类型的案例,具体代码实现如下 12345678910111213141516171819public class BaseDao<T> { private QueryRunner queryRunner = new QueryRunner(); // 定义一个变量来接收泛型的类型 private Class<T> type; // 获取T的Class对象,获取泛型的类型,泛型是在被子类继承时才确定(难点!!!) public BaseDao() { ...
评论
公告
本博客使用Hexo搭建,采用了butterfly主题