java中几种常见的设计模式(java设计模式菜鸟教程)
观察者模式:观察者模式定义了一种一队多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使他们能够自动更新自己。
单例模式(有的书上说叫单态模式其实都一样)该模式主要目的是使内存中保持1个对象 工厂模式 该模式主要功能是统一提供实例对象的引用。
常见的Java设计模式有以下10种:桥梁模式(Bridge):将抽象部分与它的实现部分分离,使它们都可以独立地变化。合成模式(Composite):将对象组合成树形结构以表示部分-整体的层次结构。
大约分为三类:创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式。结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组合模式,享元模式。
设计模式主要分三个类型:创建型、结构型和行为型。
设计原则 单一职责原则(SRP)一个对象或方法只做一件事情。如果一个方法承担了过多的职责,那么在需求的变迁过程中,需要改写这个方法的可能性就越大。
单例模式的作用及创建方法
1、一种解决方案就是把这个计数器设置为唯一对象,所有人都必须共用同一份数据。
2、单例模式指的是一个类,在全局范围内(整个系统中)有且只能有一个实例存在。
3、单例模式的定义是:保证一个类仅有一个一个实例,并提供一个访问它的全局访问点。单例模式能在合适的时候创建对象,并且创建唯一的一个。代码接近于生活,很有意思。
4、单例模式是指一个类仅允许创建其自身的一个实例,并提供对该实例的访问权限。它包含静态变量,可以容纳其自身的唯一和私有实例。它被应用于这种场景——用户希望类的实例被约束为一个对象。
如何写一个简单的单例模式?
1、第一种:饿汉模式 在 Singleton 类初始化的时候就创建了单例对象singleton,这也是饿汉模式的命名的原因;这种模式在单例模式(一)的时候我们也分析过。
2、Python的模块就是天然的单例模式,因为模块在第一次导入时,会生成 .pyc 文件,当第二次导入时,就会直接加载 .pyc 文件,而不会再次执行模块代码。
3、通过单例模式可以保证系统中一个类只有一个实例。即一个类只有一个对象实例。提示: 数据库连接池的设计一般也是采用单例模式,因为数据库连接是一种数据库资源。
4、单例模式(Singleton) ,属于最常见的设计模式之一,大部分系统都会用到,目的是为了维护系统中唯一的一个实例。