大家好,本小节中我们继续交流学习常见的设计模式。在上一小节中,我们介绍了设计模式的六大原则,并且重点阐述了单例模式的多种写法。单例模式也是为数不多的可以在面试中直接“手撕”的设计模式。除了单例模式外,在面试中考察的其余常见设计模式一般都不会要求我们手写代码。
所以,我们可以重点掌握常见设计模式的思想,在面试中可以较为清晰的阐述该种设计模式主要是在干什么,需要怎么干即可。好了,让我们来看下面试中常见的设计模式吧~
(1)工厂方法模式:
工厂方法模式是一种常见的设计模式。工厂方法模式定义了一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法模式使一个类的实例化延迟到其子类。
工厂方法模式的类图:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210403224718570.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzI1ODI3ODQ1,size_16,color_FFFFFF,t_70#pic_center)
其中,Product和ConcreteProduct分别表示抽象产品类和具体产品类。Creator和ConcreteCreator则分别表示抽象创建类和具体创建类。抽象创建类Creator中定义了创建产品的方法createProduct。
这里我们给出一个简单的工厂方法模式的Demo:
package niuke.facatory;
public class FactoryMethodTest {
public static void ma
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)