10 2022 档案
摘要:建造者模式 eg:日常生活中,装修房子会根据不同的场景、品牌、型号、价格等等组合形成了各式各样的装修风格(套餐A:现代简约,套餐B:轻奢田园,套餐C:欧式豪华)一些基本物料不会变,而其组合经常变化的时候,就可以选择这样的构建者模式来构建代码。 缺点: 1、产品必须有共同点,范围有限制。 2、如内部变
阅读全文
摘要:三、工厂模式 1.作用 完成创建者和调用者的分离。 2.分类 简单工厂模式: 就是一个工厂去创建所有东西。 class Car1{ public void product(){ System.out.println("Car1 已生产"); } } class Car2{ public void p
阅读全文
摘要:链表 一、链表的分类 1.1 单项链表 每个node节点指向下一个节点。然后有个head节点指向第一个节点,尾节点指向null。也可以有个last节点指向最后一个节点。这样能快速获取最后一个节点,再增加节点的时候能提升效率。 1.2 双向链表 每个节点都有一个pre变量存储上一个节点的地址,一个ne
阅读全文
摘要:HashSet 1、总体架构 2、方法源码 可以看到其实内部就是一个hashMap 其他方法 add()方法
阅读全文
摘要:LinkedList 1、总体架构 2、方法源码 2.1 构造方法() 2.2 addAll()方法 2.3 linkFirst()方法 目的是将这个节点放到第一个节点位置,linkLast()方法同理 2.4 getFirst()方法 获取第一个节点的值,getLast()获取最后一个节点的值。
阅读全文
摘要:HashMap 1、总体架构 2、方法源码 2.1 hash()方法 这里进行了一次扰动计算,hash值右移16位高位也参加运算,增大随机性。 2.2 构造方法() https://www.cnblogs.com/xiyixiaodao/p/14483876.html这个讲的真不错,可以多看看。 2
阅读全文
摘要:arraylist 1、总体关系图 1.1:Serializable接口 这是一个空接口,只有实现了这个接口的对象才可以进行序列化。 然后这个序列化id是为了保证反序列化成功也就是在运行时来判断id是否一致来缺点统一版本。 transient关键字修饰的属性不会被序列化。那arraylist的元素怎
阅读全文