![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习记录
if you are well is sunny
这个作者很懒,什么都没留下…
展开
-
Java动态代理为什么是必须是接口
因为Java只能单继承 所以原创 2021-02-22 23:17:22 · 297 阅读 · 0 评论 -
jdk1.8的HashMap的源码解读
jdk 1.8下的HashMap 是通过数组加链表+红黑树构成 数组:Node<K,V>[] table 要想又链表转化成红黑树要满足一下两点 1、链表的长度要达到8(实际是9个) for (int binCount = 0; ; ++binCount) { if ((e = p.next) == null) { p.next = newNode(hash, key, value, null);原创 2020-12-30 00:21:45 · 94 阅读 · 0 评论 -
spring依赖注入
spring依赖注入分两种 手动注入 基于xml 属性注入 又分为set和构造方法. 这里只能有一种 注入方式 自动注入 2.1 通过xml自动注入 2.1.1 set 2.1.2 congstruct autowire有byType,byName ,no Construct byName是通过set后面的名字来去容器中查找来注入属性 ByType是根据settter 方法的参数去容器中查找来赋值给setter方法的属性 默认的情况下是no 是什么都不会去做的 construct 是通过参数原创 2020-12-20 13:50:37 · 81 阅读 · 0 评论 -
学习记录
线程重排序 volitale 禁止重排序 保持线程可见性 dcl double check lock 双重检查锁定 提高速度 先提前筛选 happen——before 原则 规定八种情形不可以重排 List item 重排提高cpu的效率 Object obeject=new Object(); 内存屏障 前面的指令一定按 ...原创 2020-11-17 16:03:05 · 61 阅读 · 0 评论