目录设计模式的起源设计模式出现的必然性设计模式的分类思维导图下载设计模式的起源1、1995年,由Erich Gamma、Richard Helm、Ralph Johnson、John Vlissides合著《设计模式》一书。这四人又被称为“四人组”(Gang of Four),GOF就是这么来的。2、这本书列举并描述了 23 种设计模式。近来这一清单又增加了一些类别,最重要的是使涵盖范围扩展到更具
本帖仅用于记录学习设计模式时的个人笔记,属于个人理解。以下内容可能存在片面、偏执、错误等问题,仅供参考。 一、工厂模式(最常用的模式) 工厂模式的最大用处就是创建对象实例的。批量创建、根据条件自动创建等。 工厂模式中包含:工厂方法、抽象工厂 两个方式。 采用抽象工厂方式来实现工厂模式设计,实际就是先建立一个抽象类,类里包含各种创建对象实例的抽象方法。然后就可以创建一个或多个工厂类(继承于抽
原创 2011-01-12 23:46:36
977阅读
刚网上看了篇文章,将设计模式非常生动易懂: 1、策略模式 借用三国中“锦囊妙计”故事来说明。 定义一个通用妙计接口,每个妙计都实现该接口。然后定义一个精囊类,用来“装”锦囊。赵云只要从锦囊中去妙计就可以了。 优点:低耦合、高内聚。 2、代理模式 对象:西门庆、潘金莲、王婆 代理:王婆 被代理:潘金莲类似的一类女女 女女接口 潘金莲
原创 2010-12-31 11:38:51
308阅读
设计模式
原创 2014-02-24 11:09:52
388阅读
1.单例模式(创建型)单例对象的类必须保证只有一个实例存在,整个系统只能使用一个对象实例。饿汉式、懒汉式、双检锁2.代理模式给某个对象提供一个代理,并有代理对象控制原对象的引用。(重在访问权限控制)3.工厂模式(静态工厂)实现了同一接口的一些类进行实例的创建4.抽象工厂在简单工厂的基础上将以后可能要修改的代码抽象出来,通过继承的方式让子类去做决定5.装饰器模式动态地给你一个对象增加额外的功能,同时
原创 2022-09-05 11:37:30
92阅读
1点赞
类图 说明: +:public -: private #: protected ~: default 下划线: static 斜体: abstract 属性的完整表示方法:可见性 名称 :类型 [ = 缺省值 ] 方法的完整表示方法:可见性 名称(参数列表) [ : 返回类型 ] java实现 1 ...
转载 2021-07-12 15:36:00
79阅读
2评论
简介:java中最常用的设计模式之一。属于创建型模式。提供一种创建对象的最佳方式。工厂模式中,创建对象是不会对
原创 2024-08-23 09:51:17
37阅读
装饰模式 装饰模式(Decorator),动态地给一个对象加入一些额外的职责,就添加功能来说。装饰模式比生成子类更为灵活。 1.装饰模式的特点 (1)装饰对象和真实对象有同样的接口。这样client对象就能以和真实对象同样的方式和装饰对象交互。 (2)装饰对象包括一个真实对象的引用(referenc
转载 2017-04-28 15:37:00
54阅读
   本文只是对“设计模式”,有个粗略的印象,列列有什么东西,具体内容在各章节再描述。一、设计模式概述        本部分内容主要来自百度百科词条“设计模式”。  1.概念    设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的
原创 2015-03-20 16:35:39
1080阅读
@[TOC]1前言软件开发技术包含“招式”与“内功”,其中,编程语言,开发技术,著名框架可以认为是“招式”,而数据结构,算法,设计模式,重构,软件工程等则为“内功”。“招式”可以很快学会,但是“内功”的修炼需要更长的时间。对设计模式的学习会令“内功”大增,配合日益纯熟的“招式”,软件开发“功力”想必会达到一个新境界。下面来正式踏入修炼设计模式之旅。2设计模式2.1来源模式是在特定环境下人们解决某类
原创 2020-07-10 13:59:17
317阅读
单例设计模式(Singleton Pattern) 观察者模式(Observer Pattern) 工厂模式(Factory Pattern) 策略模式(Strategy Pattern) 适配器模式(Adapter Pattern) 命令模式(Command Pattern) 装饰器模式(Decorator Patter...
原创 2022-03-23 15:38:43
150阅读
单例设计模式(Singleton Pattern) 观察者模式(Observer Pattern) 工厂模式(Factory Pattern) 策略模式(Strategy Pattern) 适配器模式(Adapter Pattern) 命令模式(Command Pattern) 装饰器模式(Decorator Patter...
原创 2021-06-21 16:24:19
209阅读
因为这三个都比较偏代码,所以都是以贴出运用这些模式的代码,然后通俗总结各个设计模式。Builder设计模式Builder设计模式设计模式列子代码如下:/** * Created by hcDarren on 2017/9/23. * 这个是导航栏的基类 */public class AbsNavigationBar<B extends AbsNavigationBar.Builder>
推荐 原创 2023-02-20 09:16:50
353阅读
public Pizza orderPizza(String type) { Pizza pizza; //------------------------------------------------------------- //---------------------将虚线下代码提取出来--------------------
原创 2014-01-20 17:39:40
736阅读
1.设计模式---------->工厂模式:Sender.javapackage me.ele.mytest; public interface Sender {    public void send(); } 2.MailSendpackage me.ele.mytest; publi
原创 2016-11-22 13:59:42
667阅读
详细分类一、简单工厂模式二、工厂方法模式三、抽象工厂模式一、简单工厂模式简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。不修改代码的话,是无法扩展的。无工厂模式package com.lgd.simplefactory;public interface Car { v
原创 2021-07-06 15:33:44
157阅读
详细分类一、简单工厂模式二、工厂方法模式三、抽象工厂模式一、简单工厂模式简单工厂模式的工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。
原创 2022-03-16 17:33:51
64阅读
设计原则:⊙"开-闭"原则 (Open-Close Principle 或者OCP)[目标] 一个软件实体应该对扩展开发,对修改say NO!在设计一个模块的时候,应当思考日后升级过程中,如何不修改源代码的情况下改变这个模块的行为⊙里氏代换原则(Liskov Substitution Principle 或者LSP) 任何基类可以出现的地方,子类都可以出现,而基类与子类的继承关系就是抽象化的具体体
原创 2022-01-04 14:22:33
45阅读
设计原则:        找出应用中可能需要变化之处,把他们独立出来,不要和那些不需要变化的代码混在一起。如果每次新的需求一来,都会是某方面的代码发生变化,那么这部分的代码需要被抽出来,和其他稳定的代码有所区分。    另一种思考方式:把会变化的部分取出并封装起来,以便以后轻易地改动或扩充此部分,而不影响不需要变化的其他部分。设计原则:
原创 2014-01-15 14:46:02
915阅读
2点赞
设计模式分类: 创建型:new方法,实例化 结构型:类的结合,套用 行为型:方法的操作 必须掌握的设计模式:工厂、模板、单例、命令、适配器、代理 接口先定义,后实现 抽象类与接口: 光用继承会导致,父类一改变,子类就不得不改变,代码可复用 光用接口子类必须要重写父类所有方法,代码不能复用 反射机制: 反射机制是在运行状态中,对于任意一个类,都能够知...
原创 2021-08-27 14:49:55
62阅读
  • 1
  • 2
  • 3
  • 4
  • 5