设计模式
来源:互联网 发布:网络主播loli王春雨 编辑:程序博客网 时间:2024/06/14 06:03
单例模式
单例模式中必须保证只有一个实例存在。有时候单例是为了避免重复创建多个实例造成资源浪费,有时候也是为了避免多个不同的实例导致系统不一致的行为。
class Singleton { private volatile static Singleton instance; private Singleton() { } public static Singleton getInstance() { //第一重判断 if (instance == null) { //锁定代码块 synchronized (Singleton.class) { //第二重判断 if (instance == null) { instance = new Singleton(); //创建单例实例 } } } return instance; } }
适配器模式
分为两种:类的适配器模式、对象的适配器模式
适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。
观察者模式
当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。使用场景: 1、有多个子类共有的方法,且逻辑相同。 2、重要的、复杂的方法,可以考虑作为模板方法。
注意事项: 1、JAVA 中已经有了对观察者模式的支持类。
2、避免循环引用。
3、如果顺序执行,某一观察者错误会导致系统卡壳,一般采用异步方式
工厂模式
工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。
0 0
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式~~~~~~~~~~
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- 设计模式
- Android 使用SpannableString在TextView中插入表情、超链接、文字变大、加粗
- torch入门笔记13:实现cnn图像分类
- java 导出excel表格
- PHP.支付宝手机支付接口错误 ALI14
- go语言学习资料或视频
- 设计模式
- java正则表达式
- C++11 narrowing convertions(缩窄转换)
- (01)关于我在使用百度地图开发常见到的问题
- 输入密码或金额的显示和隐藏(续)
- Foxit Mobile PDF SDK尝鲜-IOS篇(1)-Run the Demo
- HDU 1251 统计难题 (字典树)
- spring AOP自学
- 读《Java并发性和多线程》有感