Java设计模式总结

Java中部分设计模式的总结
Strategy模式:
使某个类拥有一系列接口变量,用一系列方法类来实现接口以实现其中的相关算法。创建类的时候指定需要使用哪些具体的方法类来给接口变量赋值,即可达到代码重用的目的。
Observer模式:
某对象状态变化时,通知所有的订阅者。这个对象要拥有所有订阅者的列表。该对象实现IObservable接口,内部有notify add remove等方法,而订阅者实现IObserver接口,内部有update方法。此方法避免了观察者对观察对象的不断检查。
Decorator模式:
装饰类接口和原类接口同时拥有has-a和is-a的关系。用多个实现装饰类接口的装饰类同时对某对象进行装饰,以叠加实现它们的功能。装饰类和原类拥有同样的行为方式。装饰类中的方法要充分利用原有接口的方法。此方法有效防止类的数量爆炸。
Facotory模式:
把创建对象的逻辑封装起来,创建什么样的对象由具体工厂类决定。此方法有助于减少相同创建过程所造成的代码重复。创建对象的逻辑参数可以在创建工厂类的时候通过参数指定。
Abstract Factory模式:
工厂类能生成一系列相关的对象。在创建不同系统或不同风格的相似UI界面时很有帮助。在抽象工厂类中,只能生成相互有关联的不同种对象,使创建的对象更加规范。
Singleton模式:
某个类只有一个实例,并且供全局使用。将构造方法置为private可以防止类被再次实例化。单例类中具有static方法来返回他的唯一实例。还具有一个static变量来保存其唯一实例的引用。调用static方法时,若实例还未创建,则先创建该实例。只有这个static方法被容许创建实例。
Command模式:
Invoker拥有很多command,这些command都有一些接收者。Command中有一个普通操作,还有一个撤销操作。撤销操作一般要通过栈来实现。创建Invoker时要指定需要的command对象。
Adapter模式:
将一种接口的类转换为另一种接口,此操作需要一个adapter类,实现目标接口,并创建方法调用原类中的相应不兼容方法。主要目的是传递命令,不是增加或减少。
Façade模式:(外观模式)
通过façade类使得类更加容易使用,隐藏混乱的依赖关系。具体实现的时候将类的实例都放置在façade类当中。
Proxy模式:
通过proxy类使得仅有类确实需要时才进行实例化,不改变类的接口。(不改变调用方式)一般用于创建对象的代价比较大的时候。并且可以控制客户端何时可以调用某个方法。
Bridge模式:
可以将抽象和实现随意组合,而不必为每个组合创建一个类。两个类的种类可以看成view和resource的关系。子类不要求实现接口的所有方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值