![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
内功,与数据结构和算法类似
第七个bug
这个红李子没熟,好酸
展开
-
单例模式
文章目录单例模式实现单例模式的注意点实现单例模式的方式(7种以上)饿汉式双检锁含volatile的懒汉式单例模式实现单例模式的注意点整个程序中只能有一个实例私有构造器私有实例对象对外提供获取实例对象的静态方法实现单例模式的方式(7种以上)饿汉式:登记式:静态内部类枚举式:懒汉式:同步代码块,同步方法双检锁的懒汉式:volatile关键字ThreadLocal:为每个线程提供变量的独立副本,保证各自线程中都是单例的,但是不同线程之间不保证CAS:new的过程:分原创 2020-10-05 21:09:28 · 179 阅读 · 0 评论 -
桥接模式-维度组合
文章目录桥接模式(接口模式)Brand接口Apple品牌Lenovo品牌抽象的电脑类(将Brand组合进该类)Desktop类Laptop类测试桥接模式(接口模式)类比于,二维平面的坐标,或多维坐标。"桥"将多个维度的接口(或实现)连接起来,构成新的产品。Brand接口package com.tiko.bridge;//品牌接口public interface Brand {...原创 2020-04-23 14:47:10 · 310 阅读 · 0 评论 -
适配器模式-对象适配器和类适配器
文章目录适配器模式对象适配器(组合的方式,较常用)网线适配器接口真实的适配器(组合的方式)电脑测试类适配器(继承的方式)网线适配器接口真实的适配器(继承网线类)电脑测试适配器模式举例说明,USB网线转换器对象适配器(组合的方式,较常用)网线package com.tiko.adapter;public class Reticle { void request() { ...原创 2020-04-23 13:43:02 · 417 阅读 · 0 评论 -
原型模式-(clone,浅克隆与深克隆)
文章目录原型模式(克隆)浅克隆原型类测试深克隆原型类深克隆实现测试原型模式(克隆)Prototype拷贝与复制IO流当然也可以实现拷贝,但是效率不如在内存中实现拷贝。问题是,Java直接操作内存是比较麻烦的,就得将这部分工作交给C/C++。关键字native。Object类中的clone()方法,Cloneable接口。实现方法:实现Cloneable接口...原创 2020-04-22 10:52:47 · 386 阅读 · 0 评论 -
建造者模式-builder
文章目录建造者模式基本简图基本实现具体的产品Product抽象的建造者Bulider具体的建造者Worker指挥者Director测试升级版实现具体的Product抽象的建造者Builder具体的建造者Worker测试建造者与抽象工厂的比较建造者模式将一个复杂的对象的构建和表示进行分离,使得相同的构建过程创建不同的表示主要作用:在用户不知道对象建造过程和细节的情况下就可以直接创建复杂的对象...原创 2020-04-21 10:56:07 · 369 阅读 · 0 评论 -
抽象工厂模式-工厂的工厂
文章目录抽象工厂模式简化图具体代码产品接口-手机产品接口-路由器小米手机实现华为手机实现小米路由器实现华为路由器实现抽象工厂小米工厂实现华为工厂实现调用者调用抽象工厂模式超级工厂,创建工厂的工厂提供一个创建一系列相关或者相互依赖对象的接口,无需指定它们具体的类适用于产品等级数量相对固定的产品族,使用抽象工厂。如小米,产品等级,手机,路由等。它们都属于小米这个产品族。适合产...原创 2020-04-20 22:11:22 · 369 阅读 · 0 评论 -
简单工厂模式+工厂方法模式
文章目录工厂模式==创建者和调用者分离==分类:简单工厂模式,(静态工厂模式)1.car接口2.wulign车3.tesla车4.Factory,==静态方法,通过接收不同参数,生产不同的车==5.消费者来提车用来生产同一等级结构中的任意产品(对于增加新的产品,需要扩展已有的代码)工厂方法模式用来生产同一等级结构中的固定产品(支持增加任意产品)1.car接口,是造车的规范2.carFactory工...原创 2020-04-19 17:08:59 · 198 阅读 · 0 评论 -
单例模式(饿汉式,懒汉式,反射破坏,枚举)
文章目录单例模式饿汉式懒汉式方式一方式二 DCL(double check lock)+volatile关键字volatile可以保证可见性,但不能保证原子性。可以避免指令重排现象的产生。以上就安全了吗?不,反射可以破坏!解决方案,再在getInstance中加一把锁,来解决以上反射的破坏方案解决了,就安全了吗?不,如果一开始不通过getInstance创建,就又不安全了。解决办法,非当前的对象-...原创 2020-04-18 21:16:37 · 1184 阅读 · 1 评论 -
设计模式总概览(内容组成,简略)
文章目录GOF创建型模式(5)结构性模式(7)行为性模式(11)GOFGang of Four,作者四人组,《Design Patterns: Elements of Reusable Object-Oriented Software》创建型模式(5)单例模式工厂模式(简单工厂,工厂方法)抽象工厂模式建造者模式原型模式结构性模式(7)适配器模式桥接模式装饰模式组...原创 2020-04-18 13:32:25 · 181 阅读 · 0 评论