![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
林夕风暴
常在江边站,必有望海心
展开
-
设计模式:简单工厂模式/工厂方法模式/抽象工厂模式
简单工厂模式简单工厂模式:并不是23种设计模式的一种而是一种常用的开发编码方式,简单来说就是编写一个类专门用来创建其他类的实例,被创建的实例通常都具有共同的父类示例:创建一个鼠标工厂,专业生产鼠标,给参数 0,生产戴尔鼠标,给参数 1,生产惠普鼠标类图:示例代码实现:/** * 简单工厂模式:并不是23种设计模式的一种 * 而是一种常用的开发编码方式,简单来说就是编写一个类专门...原创 2020-01-14 11:23:02 · 155 阅读 · 0 评论 -
设计模式:单例模式的使用场景和注意事项
单例模式在JDK源码中的应用Runtime类Runtime runtime = Runtime.getRuntime();看Runtime类的源码:由此可见,该类是典型的单例模式,并且是静态常量的饿汉式使用单例模式注意事项:要记住获得实例的方法,而不是通过new来创建一个对象实例...原创 2020-01-04 10:22:11 · 214 阅读 · 0 评论 -
设计模式:单例模式(枚举,强烈推荐)
通过枚举实现单例模式最佳的单例实现模式就是枚举模式。利用枚举的特性,让JVM来帮我们保证线程安全和单一实例的问题。除此之外,写法还特别简单。还可以规避可能还存在反射攻击或者反序列化攻击,完全保证单例模式代码示例和注释:/** * 单例模式:枚举方式 * 1.建一个枚举类 */public class SingletonEnumDemo { public static void ...原创 2020-01-02 15:05:24 · 361 阅读 · 1 评论 -
设计模式:单例模式(静态内部类)
单例模式(静态内部类)JVM装载部类不会实例化外部类对象,装载内部类时候才会实例化外部类对象三步:1.构造器私有化2.创建私有静态内部类,在静态内部类中创建私有静态对象实例3.对外提供共有方法(以供外部调用),返回对象实例代码示例和解释/** * 单例模式:静态内部类实现(推荐使用) * 1.构造器私有化 * 2.创建私有静态内部类,在静态内部类中创建私有静态对象实...原创 2019-12-29 20:37:30 · 322 阅读 · 0 评论 -
设计模式:单例模式(懒汉式)
单例模式(饿汉式)两步:1.构造器私有化2.对外提供一个公有方法,用于获得对象实例,(使用到该类,才去实例化对象)方式一:单线程情况下没问题,多线程情况下会出现线程安全问题/** * 单例模式:懒汉式 * 1.构造器私有化 * 2.对外提供一个公有方法,用于获得对象实例,(使用到该类,才去实例化对象) */public class Singleton { public st...原创 2019-12-27 16:47:02 · 315 阅读 · 0 评论 -
设计模式:单例模式(饿汉式:静态常量、静态代码块)
单例模式简单说:一个对象只有一个对象实例饿汉式(静态常量):饿汉式(饥饿,一上来就想吃,一装载就实例化)三步:1.构造器私有化(外部不能通过new来新建一个对象实例)2.类内部创建一个对象实例3.提供一个共有的静态方法(供外部调用):返回实例对象代码示例和注解: * 单例模式: * 饿汉式(静态常量) * 1.构造器私有化(外部不能通过new来新建一个对象实例) * ...原创 2019-12-27 11:19:35 · 556 阅读 · 0 评论 -
设计模式七大设计原则:
设计模式的七大设计原则:单一职责、接口隔离、依赖倒转、里式替换、开闭原则、迪米特法则(最少知道原则)、合成复用原则设计原则的核心思想:为松耦合而设计单一职责: 一个类只具有一个职责,而不具有多个职责,,比如一个用户服务类中应该只有与用户有关的功能实现,而不是包含比如其他模块的职责(类的细分)接口隔离: 每一个接口应该承担一种相对独立的角色,不干不该干的事,该干的事都要干。(接口的细分)*...原创 2019-12-27 10:54:50 · 131 阅读 · 0 评论