1.说一下设计模式?你都知道哪些?
答:设计模式总共有 23 种,总体来说可以分为三大类:创建型模式( Creational Patterns )、结构型模式( Structural Patterns )和行为型模式( Behavioral Patterns )。
分类 | 包含 | 关注点 |
---|---|---|
创建型模式 | 工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式 | 关注于对象的创建,同时隐藏创建逻辑 |
结构型模式 | 适配器模式、过滤器模式、装饰模式、享元模式、代理模式、外观模式、组合模式、桥接模式 | 关注类和对象之间的组合 |
行为型模式 | 责任链模式、命令模式、中介者模式、观察者模式、状态模式、策略模式、模板模式、空对象模式、备忘录模式、迭代器模式、解释器模式、访问者模式 | 关注对象之间的通信 |
下面会对常用的设计模式分别做详细的说明。
2.什么是单例模式?
答:单例模式是一种常用的软件设计模式,在应用这个模式时,单例对象的类必须保证只有一个实例存在,整个系统只能使用一个对象实例。
优点:不会频繁地创建和销毁对象,浪费系统资源。
使用场景:IO 、数据库连接、Redis 连接等。
单例模式代码实现:
class Singleton {private static Singleton inst