本文总结了 Java 领域常见的 50 道设计模式面试题,涵盖设计原则、创建型模式、结构型模式、行为型模式以及在 Spring/JDK 源码中的应用。
一、设计原则 (Design Principles)
1. 什么是 SOLID 原则?
SOLID 是面向对象设计的五个基本原则的首字母缩写:
- S (Single Responsibility Principle):单一职责原则。一个类应该只有一个引起它变化的原因。
- O (Open/Closed Principle):开闭原则。对扩展开放,对修改关闭。
- L (Liskov Substitution Principle):里氏替换原则。子类必须能够替换掉它们的父类。
- I (Interface Segregation Principle):接口隔离原则。客户端不应该依赖它不需要的接口。
- D (Dependency Inversion Principle):依赖倒置原则。高层模块不应该依赖低层模块,二者都应该依赖其抽象。

