摘要: 概念 责任链模式是为一个请求创建一条处理者调用链,在该链中,处理者保存下一个处理者的引用。当一个处理者不能执行该请求的时候,它会把请求交给下一个下一个处理者,如此类推。 优点 请求和处理两个处理相互解耦。 可以动态的添加处理者。 缺点 请求到链表最后,都没有处理者能处理。 可能导致循环引用。 UML 阅读全文
posted @ 2020-10-14 10:21 卑斯的卑微 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 简介 Map接口与常见实现类的UML图: Map实现的类存储对象是键值对。 AbstractMap抽象类实现了Map接口部分方法,那么其他Map实现类可以通过继承AbstractMap来减少代码编写。 实现了SortedMap接口的Map实现类具有排序键值对的功能。 NavigableMap接口继承 阅读全文
posted @ 2020-06-29 10:56 卑斯的卑微 阅读(279) 评论(0) 推荐(0) 编辑
摘要: 观察者模式是行为型模式的一种,它是 对象之间多对一的一种设计方案,就是多个观察者盯着一个主对象,若主对象发生某种行为,就可以通知观察者做出相应反应。 假设需求: 现有一个校讯通系统,该系统内可以绑定多个电话号码,当校讯通更改通知消息的同时,自动短信通知多个电话号码。 UML类图: 角色分析: Sub 阅读全文
posted @ 2020-06-24 19:27 卑斯的卑微 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 简介 Stack是一个栈,那就满足于后进先出(FILO)。 public class Stack<E> extends Vector<E> 该类继承自Vector,即其容器的数据类型是数据,拥有Vector的特性。在Vector源码分析有详细该类信息。 构造函数: public Stack() {} 阅读全文
posted @ 2020-06-11 11:44 卑斯的卑微 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 简介 LinkedList是以双向链表为数据结构的容器。它可以进行堆栈、队列、双端队列的操作。 public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, 阅读全文
posted @ 2020-06-11 10:18 卑斯的卑微 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 该类与AbstractList类是另外一套抽象类,前者是在迭代器的基础上实现的get、set、add和remove方法,后者则是随机访问基础上实现这些方法。 源码分析(JDK1.8) //构造方法 protected AbstractSequentialList() { } //根据索引获取元素(通 阅读全文
posted @ 2020-06-08 12:49 卑斯的卑微 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 简介 Vector是JDK1.0版本添加的类,以数组为底层数据结构的集合,也是一个动态的数组队列 public class Vector<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.S 阅读全文
posted @ 2020-06-07 17:24 卑斯的卑微 阅读(294) 评论(0) 推荐(0) 编辑
摘要: ArrayList简介 ArrayList以数组为底层数据结构的集合,是一个动态的数组队列,就是说该类的容量可以增长,与一般的数组不同。 可以看出Arraylist其继承AbstractList抽象类,而AbstractList也实现了 List接口。 实现的接口: List:表示该集合可以存储重复 阅读全文
posted @ 2020-05-25 19:24 卑斯的卑微 阅读(556) 评论(0) 推荐(0) 编辑
摘要: setAccessible作用是启动和禁用访问安全检查的开关 参数值为true则指示反射的对象在使用时应该取消java语言访问检查。 提高反射的效率。如果代码中必须使用反射,而该句代码需要频繁的被调用,那么请设置为true; 使得原本无法访问的私有成员也可以访问 参数值为false则指示反射的对象应 阅读全文
posted @ 2020-01-26 15:38 卑斯的卑微 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 类加载的作用:将class文件字节码内容加载到内存中,并将这些静态数据转换成方法区的运行时数据结构,然后在堆中生成一个代表这个类的java.lang.Class对象,作为方法区中类数据的访问入口。 类缓存:标准的JavaSE类加载器可以按要求查找类,但一旦某个类被加载到类加载器中,它将维持加载(缓存 阅读全文
posted @ 2020-01-26 15:32 卑斯的卑微 阅读(1806) 评论(0) 推荐(0) 编辑