java常见的设计模式简介

//常用设计模式简介

创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、
							备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

1)代表各个设计模式的简介
2)代表各个设计模式的应用场景
3)代表目的和优势
(*)代表重点掌握
							
一、工厂方法(*)
1)创建过程延迟到子类,返回抽象
2)dataSource接口
3)不同条件下创建不同实例

二、抽象工厂
1)一个工厂里聚合多个同类产品
2)

三、单例模式(*)
1)系统中该类实例只有一个,构造器私有,暴露公有访问方法
2)Spring框架中所有的Bean默认是单例
3)节约开销和资源

四、原型模式(*)
1)对象克隆
2)struts2中Action的Bean配置
3)快速产生相同的对象

五、建造者模式
1)使用多个简单的对象一步一步构建成一个复杂的对象
2)
3)将一个复杂的构建与其表示相分离

六、适配器模式
1)解决兼容性匹配问题
2)电源适配器、读卡器
3)转换匹配,复用功能

七、代理模式(*)
1)代理对象代表真实对象
2)jdk动态代理,aop代理,持久层的延迟加载
3)控制对象的访问

八、外观模式(*)
1)提供一个门面封装内部细节,简化客户端调用
2)javaEE中每个service都是众多dao的门面,客户端无需与多个dao打交道
3)封装交互、简化调用

九、装饰器模式
1)向一个现有的对象添加新的功能,同时又不改变其结构
2)

十、桥接模式(*)
1)分离抽象和实现
2)javaEE中让dao层管理持久层,让sevice层管理业务逻辑。
3)便与切换多个实现,解耦

十一、策略模式(*)
1)不同对象采用不用策略
2)Hibernate配置文件中配置数据库方言,便于切换数据库
3)分离算法,选择实现

十二、模板方法
1)固定骨架
2)HibernateTemplate等公共类
3)复用代码

十三、责任链模式(*)
1)如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推
2)web中的拦截器和过滤器
3)分离职责,动态组合

十四、命令模式(*)
1)把命令当请求或参数
2)java8里面的lambda表达式,回调函数
3)封装请求

十五、观察者模式(*)
1)一个对象变化时,其它依赖该对象的对象收到通知
2)java事件机制、java监听器等底层实现。JMS中发布订阅模型的实现
3)触发联动

十六、迭代器模式
1)以统一的方式访问聚合对象中的各个元素,而不用暴露对象内部细节
2)Iterator迭代器的使用
3)控制对象的访问

十七、中介者模式
1)让中介封装交互,简化调用
2)机场调度系统
3)封装交互,解耦

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值