
设计模式
_水果先生
这个作者很懒,什么都没留下…
展开
-
代理模式
代理模式总结 代理模式核心作用就是通过代理对象实现对核心对象使用的控制 设计思路:定义一个抽象角色,让代理角色和真实角色分别去实现它 真实角色—实现抽象角色,定义核心业务逻辑,供代理角色调用。它只关注核心业务逻辑,比如具体的计算逻辑 代理角色—实现抽象角色,是真实角色的代理,通过调用真实角色的业务逻辑方法,实现对真实角色访问的控制,比如报文中的一些格式化内容 代理模式分为静态代理和动态代理两种,静态代理是我们自己编写代理类,动态代理是程序运行中动态产生代理类 静态代理 静态代理实现代码 // 定义抽象角色原创 2021-02-17 15:41:38 · 170 阅读 · 0 评论 -
02工厂模式
工厂模式 实例化对象,用工厂方法代替new操作 将选择实现类、创建对象统一管理和控制,从而将调用者和实现类解耦 简单工厂模式 用来生产同一等级结构中的任意产品,对于新增产品需要修改代码 工厂方法模式 用来生产同一等级结构中的固定产品,支持新增任意产品 抽象工厂模式 用于生产不同产品族的全部产品,无法新增产品,可以新增产品族 简单工厂 // 汽车接口 public interface Car { void run(); } // 两个实现类 public class Byd原创 2021-02-06 21:48:59 · 152 阅读 · 0 评论 -
01单例模式
单例模式有五种实现方式 饿汉式–线程安全,调用效率高,不能延迟加载 懒汉式–线程安全,调用效率低,可以延迟加载 双重检测锁–线程安全,同时具备调用效率高和可以延迟加载的优点,但是由于底层原因,偶尔会出现问题,不建议使用 静态内部类–线程安全,调用效率高,同时可以延迟加载 枚举类–线程安全,调用效率高,不支持延迟加载 /** * 饿汉式 */ public class SingletonDemo1 { // 构造器私有化 private SingletonDemo1() { }原创 2021-01-10 22:17:31 · 162 阅读 · 0 评论