设计模式
黑白se幻想
努力!!奋斗!!!
展开
-
单例模式的六种实现方式
单例模式实现方法一般分为两种,懒汉式 和 恶汉式。以下都是属于懒汉式1.方法一/* * 只适用于单线程 环境(不推荐使用,且多线程环境下不可用) * */public class Singleton { //构造函数私有化 private Singleton(){ } //声明一个静态的本类对象 private static Singleton instance; //提供一...原创 2019-04-12 17:08:55 · 226 阅读 · 0 评论 -
动态代理的两种实现方式
第一种:静态代理方式你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。第二种:JDK动态代理方式import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import jav...原创 2019-05-15 20:46:15 · 1523 阅读 · 0 评论 -
设计模式(五):策略模式
设计模式(五):策略模式一、介绍策略模式的类图 策略模式是处理算法不同变体的一种成熟模式,策略模式通过接口或抽象类封装算法的标识,即在接口中定义一个抽象方法,实现该接口的类将实现接口中的抽象方法。策略模式把针对一个算法标识的一系列具体算法分别封装在不同的类中,使得各个类给出的具体算法可以相互替换。 在策略模式中,封装算法标识的接口称作策略,实现该接口的类称作具体策略。二...原创 2019-07-29 11:27:20 · 287 阅读 · 0 评论 -
设计模式(一):简单工厂模式
设计模式(一):简单工厂模式一、定义简单工厂模式是属于类的创建型模式,又叫静态工厂方法模式。通过专门定义一个类来创建其他类的实例,就好比与一个我们生活中的工厂一样,并且被创建的实例通常都具有相同的父类二、简单实现我们先定义一个Apple和Banana的类,里面都只有一个get方法//苹果类public class Apple { public void get(){ ...原创 2019-07-25 10:14:08 · 118 阅读 · 0 评论 -
设计模式(二):工厂方法模式
设计模式(二):工厂方法模式一、概念简介工厂方法模式同样属于类的创建型模式,也被称为多态工厂模式。它的意义是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类当中去,核心工厂类不再负责产品的创建,成为了一个抽象工厂角色,仅仅负责具体工厂子类的必须实现的接口,这样进一步抽象化的好处是使得工厂方法模式可以使系统在不修改具体工厂角色的情况下引入新的产品。二、实现与比较昨天我们学习了简单工厂...原创 2019-07-25 12:10:01 · 132 阅读 · 0 评论 -
设计模式(六):适配器模式
设计模式(六):适配器模式一、概念适配器模式,讲一个类的接口转换为客户希望的另外一个接口,它使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。简单地说,就是需要的东西就在面前,但却不能使用,而短时间又无法改造它,于是我们就想办法适配它。二、实现大家都知道姚明吧?NBA里的中国球星,实力没得说,那我们今天就由他迁出适配器模式的话题;姚明一开始进入NBA,肯定是听不懂中文的,那么他要...原创 2019-07-31 10:00:18 · 142 阅读 · 0 评论 -
设计模式(三):抽象工厂模式
设计模式(三):抽象工厂模式一、概念抽象工厂模式 是所有形态的工厂模式中,最为抽象和最具一般性的。它可以向客户端提供一个接口。使得客户端在不必指定产品的具体类型的情况下,能够创建多个产品族的产品对象。二、实现昨天,我们的工厂模式的核心类是FruitFactory工厂接口,然后再定义了两个具体工厂类AppleFactory和BananaFactory。而今天,我们厂的大boss又提出了新需求...原创 2019-07-27 09:48:02 · 154 阅读 · 0 评论 -
设计模式(四):装饰模式
设计模式(四):装饰模式一、概念装饰模式又被称为包装模式。通过对客户端透明的方式来拓展对象的功能,是继承关系的一种替代方案二、实现假设,现在要给QQ秀里的人物设计装扮衣服,每个人可按自己不同的喜好搭配不同的衣服。先创建Person类,它里面有一个show()展示(也是穿衣服)的方法public class Person { private String name; ...原创 2019-07-27 20:04:44 · 143 阅读 · 0 评论 -
设计模式(七):建造者模式
设计模式(七):建造者模式一、概念建造者模式属于创建型模式之一,用来隐藏复合对象的创建过程,它把复合对象的创建过程加以抽象,通过子类继承和重载的方式,动态地创建具有复合属性的对象。类图如下所示:二、简单实现建造嘛建造,这边我们就以建造房子为例子,讲一讲是怎么用建造者模式建房子的。假如需求是这样的:需要建造的房子暂时有两种,别墅和公寓。先不考虑设计模式,来实现一番创建House抽象父...原创 2019-08-07 09:40:09 · 249 阅读 · 0 评论