工作记录与分享
首页
积累
Java基础
git版本控制
mysql数据库
文章归档
分类
AI (2)
生活 (1)
设计模式 (26)
.NET (6)
MSSQL Server (1)
积累 (36)
mysql数据库 (11)
git版本控制 (1)
Java基础 (10)
默认分类 (1)
全部分类 ( 92 )
查询
当前位于"设计模式"分类下
迭代器模式(十六)
是 Java 和 .Net 编程环境中非常常用的设计模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示看到这个我想到了java的foreach,就是按顺序迭代集合和数组里的对象,不需要知道长度,从头到尾迭代菜鸟案例:我们将创建一个叙述导航方法的 Iterator 接口和一个返回迭代器的 C
2023年06月08日
560次浏览
解释器模式(十五)
提供了评估语言的语法或表达式的方式该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等,我想到了log4j,在用数据库的时候会输出自己写的SQL语句和返回结果菜鸟案例:我们将创建一个接口 Expression 和实现了 Expression 接口的实体类。定义作为上下文中主要解释
2023年06月08日
525次浏览
命令模式(十四)
以命令的形式包裹在对象中,并传给调用对象意图:将一个请求封装成一个对象,从而使您可以用不同的请求对客户进行参数化。菜鸟案例:我们首先创建作为命令的接口 Order,然后创建作为请求的 Stock 类。实体命令类 BuyStock 和 SellStock,实现了 Order 接口,将执行实际的命令处理
2023年06月08日
545次浏览
责任链模式(十三)
为请求创建了一个接收者对象的链,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推。意图:避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。就想抛出错误
2023年06月08日
542次浏览
享元模式(十二)
主要用于减少创建对象的数量,以减少内存占用和提高性能尝试重用现有的同类对象,如果未找到匹配的对象,则创建新对象换句话说就是共享对象,在某些对象需要重复创建,且最终只需要得到单一结果的情况下使用菜鸟案例:我们将创建一个 Shape 接口和实现了 Shape 接口的实体类 Circle。下一步是定义工厂
2023年06月08日
517次浏览
外观模式(十一)
隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口有点像工厂模式,只需要知道用哪个方法能返回什么对象就行,不过还是有区别的,外观模式在你调用接口的时候你需要的对象都创建好了,例子:比如new一个电脑在 new 电脑的同时把 cpu、内存、硬盘都初始化好并且接好线。对外暴露方法(启动电脑,
2023年06月08日
545次浏览
装饰器模式(十)
允许向一个现有的对象添加新的功能,同时又不改变其结构用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。菜鸟案例:我们将创建一个 Shape 接口和实现了 Shape 接口的实体类。然后我们创建一个实现了 Shape 接口的抽象装饰类 ShapeDecorator,并把 Shape
2023年06月08日
512次浏览
组合模式(九)
又叫部分整体模式,是用于把一组相似的对象当作一个单一的对象。用来表示部分以及整体层次,创建了对象组的树形结构。通俗解释:就是在一个对象中包含其他对象,这些被包含的对象可能是终点对象(不再包含别的对象),也有可能是非终点对象(其内部还包含其他对象,或叫组对象),我们将对象称为节点,即一个根节点包含许多
2023年06月08日
435次浏览
过滤器模式(八)
这种模式允许开发人员使用不同的标准来过滤一组对象,通过逻辑运算以解耦的方式把它们连接起来结合多个标准来获得单一标准菜鸟案例:我们将创建一个 Person 对象、Criteria 接口和实现了该接口的实体类,来过滤 Person 对象的列表。CriteriaPatternDemo,我们的演示类使用 C
2023年06月08日
515次浏览
桥接模式(七)
是用于把抽象化与实现化解耦,使得二者可以独立变化涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。这两种类型的类可被结构化改变而互不影响菜鸟案例:我们有一个作为桥接实现的 DrawAPI 接口和实现了 DrawAPI 接口的实体类 RedCircle、GreenCircle。Shape 是
2023年06月07日
519次浏览
«
1
2
(current)
3
»
个人信息
Andy
广东 广州
文章数量
92
分类数量
10
标签数量
13
所有标签
red
0
centos
2
照片查看器
1
JVM
2
IDEA
1
ThreadLocal
1
java
2
mysql
3
Navicat
1
Navicat mysql
0
git
1
git版本回退
1
git回退
0
所有标签
92