09 2020 档案

摘要:动态代理: 顾名思义代理对象的类是通过动态方式来自动生成的。这样的好处是, 我们不需要每次为被代理对象单独创建代理类, JDK API 中, 对动态代理模式提供了支持。 JDK 的动态代理支持 : java.lang.reflect.Proxy:生成动态代理类和对象; java.lang.refle 阅读全文
posted @ 2020-09-27 20:40 码农-张员外 阅读(206) 评论(0) 推荐(0)
摘要:代理模式(Proxy) : 为其他对象提供一种代理以控制对这个对象的访问。代理模式说白了就是“真实对象” 的代表, 在访问对象时引入一定程度的间接性, 因为这种间接性可以附加多种用途。 举例说明:操作员查询销售订单功能, 为了提高查询性能, 我们接入缓存功能, 如果缓存中有数据, 那么直接返回缓存中 阅读全文
posted @ 2020-09-27 16:40 码农-张员外 阅读(179) 评论(0) 推荐(0)
摘要:工厂模式(Factory Pattern) 是 Java 中最常用的设计模式之一。 这种类型的设计模式属于创建型模式, 它提供了一种创建对象的最佳方式。 在工厂模式中, 我们在创建对象时不会对客户端暴露创建逻辑, 并且是通过使用一个共同的接口来指向新创建的对象。 工厂模式让调用者与被调用者之间解耦 阅读全文
posted @ 2020-09-26 20:53 码农-张员外 阅读(180) 评论(0) 推荐(0)
摘要:策略模式(Strategy Pattern) :定义了一系列的算法, 将每一种算法封装起来并可以相互替换使用, 策略模式让算法独立于使用它的客户应用而独立变化。 OO设计原则: 1.面向接口编程(面向抽象编程); 2.封装变化; 3.多用组合, 少用继承 ; 当一个功能有多种实现方式时, 我们应该使 阅读全文
posted @ 2020-09-26 15:48 码农-张员外 阅读(194) 评论(0) 推荐(0)
摘要:单例模式(Singleton) : 是一种常用的软件设计模式。 在它的核心结构中只包含一个被称为单例的特殊类。 通过单例模式可以保证系统中, 应用该模式的类一个类只有一个实例, 即一个类只有一个对象实例。 目的是为了节省重复创建对象所带来的内存消耗, 从而来提高效率 。 实现核心点: 1.构造方法私 阅读全文
posted @ 2020-09-21 21:57 码农-张员外 阅读(188) 评论(0) 推荐(0)
摘要:数组和链表都是存储一个对象,HashMap 存储数据是以 一对数据来存储,即键值对【key(对象) >value(对象)】。 JDK1.8版本之前,HashMap的实现: 数组 + 链表; JDK1.8版本之后,HashMap的实现: 数组 + 链表 / 二叉树(红黒树); 数组的默认大小是16,加 阅读全文
posted @ 2020-09-20 20:29 码农-张员外 阅读(130) 评论(0) 推荐(0)
摘要:二叉树(Binary Tree) 是树类应用最广泛的一种数据结构, 是非线性数据结构。顾名思义, 二叉树的每个节点最多只能包含两个子节点, 一个节点可以包含0-2个子节点, 如果是两个子节点, 也就是通常我们说的左节点和右节点, 通常子树被称作“左子树” 和“右子树” 。 二叉树的应用很多, 也是项 阅读全文
posted @ 2020-09-19 21:18 码农-张员外 阅读(466) 评论(0) 推荐(0)
摘要:链表(Linked list) 是一种常见的基础数据结构, 与数组都属于线性数据结构 , 但是并不会按线性的顺序存储数据, 而是在每一个节点里存储下一个节点的指针(Pointer) 。 链表结构中, 需要使用递归算法。 递归算法是一种直接或者间接地调用自身算法的过程。 递归必须要有出口, 否则就是就 阅读全文
posted @ 2020-09-19 20:41 码农-张员外 阅读(241) 评论(0) 推荐(0)
摘要:数组是可以保存一组相同数据类型的一种数据结构 。数组必须有固定的长度, 且不能修改长度 ,数组拥有边界检查, 尝试获取不在数组范围内的值时, 会抛出ArrayIndexOutOfBoundsException异常 。数组是引用类型, 会存放在堆内存中。 对象数组和基本数据类型数组在使用上是相同的, 阅读全文
posted @ 2020-09-19 20:28 码农-张员外 阅读(452) 评论(0) 推荐(0)