自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 模板模式

模板模式基本介绍模板方法模式解决豆浆制作问题1) 应用实例要求2)代码实现第一步:创建抽象类 表示豆浆类第二步:创建具体类,红豆豆浆和花生豆浆模板方法模式的钩子方法第一步:修改抽象类,加入钩子方法第二步:创建纯豆浆类,不需要加入配料总结基本介绍模板模式(Template Patern),在一个抽象类公开定义了执行它的方法的模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。模式中的角色抽象类(AbstractClass):实现了模板方法,定义了相同子类的方法和不一样的抽象方法。

2020-07-10 15:56:31 225

原创 代理模式

代理模式基础介绍静态代理第一步:定义一个接口:IUserDao第二步:目标对象UserDao实现接口IUserDao第三步:使用静态代理方式,就需要在代理对象UserDaoProxy中也实现IUserDao第四步:调用的时候通过调用代理对象的方法来调用目标对象总结动态代理jdk动态代理第一步:定义一个接口:IUserDao第二步:目标对象UserDao实现接口IUserDao第三步:创建代理对象生成工厂Cglib动态代理第一步:创建目标对象第二步:创建代理对象生成工厂总结基础介绍代理模式:为一个对象提供

2020-07-08 15:29:25 359

原创 享元模式

享元模式基本介绍享元模式的实现第一步:创建非共具体享元类(棋子位置类和user类)第二步:创建抽象享元类(抽象棋子类Chess)第三步:创建具体享元类(黑白棋子类BlackWhiteChess)第四步:创建享元工厂总结基本介绍享元模式这样理解,“享”就表示共享,“元”表示对象.享元模式涉及的四个角色1)抽象享元类(FlyWeight) 是抽象的享元角色, 他是产品的抽象类, 同时定义出对象的外部状态和内部状态(后面介绍) 的接口或实现2) 具体享元类(ConcreteFlyWeight) 是具体的

2020-07-08 10:49:43 309

原创 外观模式

外观模式基础介绍实例:汽车的启动与停车第一步:创建子系统角色(车门类)第二步:创建子系统角色(发动机类)第三步:创建子系统角色(油门类)第四步:创建子系统角色(刹车类)第五步:创建门面角色测试总结基础介绍外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。涉及两个角色:1.门面角色:外观模式的核心。它被客户角色调用,它熟悉子系统的功能。内部根据客户角色的需求预定了几种功能的组合。2.子系统角色:实现了子系统的功能。它对客户角色和Facade时未知的

2020-07-06 10:14:46 241

原创 组合模式

组合模式基本介绍实例:学校的组成第一步:创建抽象构件(Component)第二步:创建容器构件(Composite) 学校第三步:创建容器构件(Composite)学院第四步:创建叶子构件(Leaf),系总结优点缺点基本介绍组合模式(Composite Pattern):组合多个对象形成树形结构以表示具有“整体—部分”关系的层次结构。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性,是一种对象结构型模式。涉及三个角色:抽象构件(Component):可以是接口或者抽象类,是叶

2020-07-02 15:04:42 4138

原创 装饰者模式

装饰者模式基本介绍实例:咖啡订餐项目第一步:创建抽象组件角色(饮料)第二步:创建具体组件角色(浓缩咖啡,美式咖啡)第三步:创建抽象装饰器第四步:创建具体装饰器角色(牛奶,巧克力)基本介绍动态的将新功能添加到对象上,在对象功能扩展方面,他比继承更有弹性,装饰者模式也体现了开闭原则。装饰器模式组成:1.抽象组件角色(Component): 定义可以动态添加任务的对象的接口2.具体组件角色(ConcreteComponent):定义一个要被装饰器装饰的对象,即 Component 的具体实现3.抽象装

2020-06-30 17:06:32 258

原创 桥接模式

桥接模式基本介绍事例说明一般实现:桥接模式实现:总结优点:缺点:基本介绍桥接模式(Bridge Pattern):将抽象部分与其实现部分分离,使它们都可以独立变化。是一种对象结构型模式,又称为柄体模式(Handle and Body Pattern)或接口模式(Interface Pattern)。桥接模式涉及四个角色:1.抽象类(Abstraction):定义抽象类的接口,一般为抽象类,其中定义了一个实现类接口(Implementor)类型的对象,且与该对象具有关联关系2.扩充抽象类(Refin

2020-06-30 09:13:04 422 3

原创 适配器模式(三种)

适配器模式基本介绍1.类适配器模式代码实现结论:2.接口适配器模式代码实现结论:3.接口适配器模式代码实现总结基本介绍适配器模式将一个类的接口转换成另一个接口,让原本接口不兼容的类可以兼容简单来说就是我们家里的插座都是220V的电压,然后现在手机充电只能支持5V的电压,这肯定不能直接用,所以需要用充电器做下转换,将220V的电压转成5V的电压,这样手机就可以用5V的电压充电了。主要分为三类:类适配器模式,对象适配器模式,接口适配器模式适配器模式三个角色Source:需要被适配的类、接口、对象,即

2020-06-28 17:15:47 1779

原创 建造者模式

建造者模式基本介绍代码实现总结基本介绍建造者模式就是将产品和产品建造过程解耦(分离),比如工地上建房子,对于我们用户来说,不需要知道房子的建造过程,只要到时候直接去开发商购买房子就行了。对与开发商来说,只用去指挥手下的包工头让他们去建造。其实这就是建造者模式,把创建对象的一些复杂过程封装起来,我们需要的时候,直接调用就行了。建造模式四个角色1)Product(产品角色):一个具体的产品对象,比如我上面说的,房子2)Builder(抽象建造者):给出一个抽象类/接口,规定如何去建造房子。给下面的包工

2020-06-24 15:50:14 311 2

原创 原型模式

原型模式(Prototype Pattern)也很好理解,就是复制原来的对象来创建新的对象。类似于复制粘贴这种操作,将对象复制一份并返还给调用者。原型模式用于创建重复的对象,同时又能保证不浪费应用的系统资源。形象的理解:火影忍者中的鸣人的影分身之术。原型模式基本使用深拷贝和浅拷贝浅拷贝深拷贝(两种实现方式)1.重写clone()方法实现深拷贝2.序列化的方式总结基本使用//实现Cloneable接口,重新Object类的clone()方法public class Sheep implements

2020-06-23 14:39:06 311

原创 工厂模式

工厂模式简单工厂步骤1: 创建交通工具规范接口;步骤2: 创建具体产品类;步骤3:创建具体工厂类,根据传入类型创建对应具体产品实例的方法;步骤4:运行结果,外界通过调用具体工厂类的方法,根据传入类型的不同,从而创建不同具体产品类的实例工厂方法步骤1: 创建工厂接口;步骤2: 创建工厂实现;抽象工厂步骤1:先创建三个抽象产品类;步骤2:创建三个具体产品分别继承三个抽象产品类步骤3:创建一个抽象工厂类步骤4:创建具体的工厂类步骤5:功能测试**总结:三种工厂方式对比说明**工厂顾名思义就是创建产品,根据产品是

2020-06-19 17:35:16 363

原创 单例模式的八种实现

**单例模式是 Java 中最简单,也是最基础,最常用的设计模式之一。采取一定的方法保证整个软件系统中,对每个类只能存在一个对象实例,并提供一个访问它的全局访问点。下面就来讲讲Java中的8种实现单例模式的写法。**单例模式一共有八种实现方式:饿汉式(静态常量)(√)饿汉式(静态代码块)(√)懒汉式(线程不安全)懒汉式(线程安全,同步方法)懒汉式(线程安全,同步代码块)双重检查(√)静态内部类(√)枚举类(√)注:打对号的实现方式是推荐使用。具体代码实现一.饿汉式(静态常量)(

2020-06-17 14:13:59 859 6

原创 Java开发中的23种设计模式

什么是设计模式设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应.每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广

2020-06-17 14:01:53 410

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除