欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

见面试官前,掏出来看看系列之——设计模型思维导图

程序员文章站 2022-05-21 23:53:43
...


见面试官前,掏出来看看系列之——设计模型思维导图
见面试官前,掏出来看看系列

本系列旨在为面试者见到面试官之前打发无聊时间之用
缓解面试者见到面试官之前,因为紧张而头脑一片空白又想看点知识点来提高安全感之用

设计模式

目的:
代码重用
避免程序大量修改
代码易于理解
保证代码可靠性

单例模式

在使用之前对象已经创建好,在多线程环境下使用这种方法:

public class Singleton{
	private Test(){
		private static Test unique = new Test();
		public static Test getunique(){
			return unique;
		}
	}
}

构造函数必须为私有,必须提供一个全局访问点

1.确保某一类,只有一个实例。

2.自行实例化,向整个系统提供这个实例

3.全局变量和单例模式的区别:全局变量是对一个对象的静态引用,并不能保证应用程序中只有一个实例;单例模式在类中保存了唯一实例(这个类),所以可以保证只能创建一个实例。

工厂模式

1.动态决定将哪一个类实例化

2.简单工程 模式

  • 根据提供给它的参数,返回的是几个可能产品中的一个类的实例

3.工厂方法 模式

  • 定义一个用于创建产品对象的工厂接口,而将实际创建工作推迟到工厂接口的子类中

4.抽象工厂 模式

  • 向客户端提供一个接口,使客户端不必指定产品的具体情况下,创建多个产品族中的产品对象

适配器模式

1.把一个类的接口转化为客户端所期望的另一种接口,从而使因不匹配而无法一起工作的两种类能够一起工作

2.可用于 遗留代码复用、类库迁移等方面

3.对象适配器:低耦合

4.类适配器:因为是“多继承”的实现方式,所以,引起程序 高耦合

观察者模式

1.也称:发布/订阅模式

2.可以避免组件之间高耦合

3.将观察者、被观察者分离开来

4.一个对象只做一件事

5.一个对象通过添加一个方法(该方法允许观察者注册自己)使本身变得可观察。当可观察的对象更改时,他会将消息发送到已注册的观察者

相关标签: 思维导图