Java 中有许多常用的设计模式,它们是为了解决特定问题而被反复使用和验证的经验总结。以下是一些常见的 Java 设计模式:
工厂模式 (Factory Pattern):
java.util.Calendar#getInstance()抽象工厂模式 (Abstract Factory Pattern):
javax.xml.parsers.DocumentBuilderFactory单例模式 (Singleton Pattern):
java.lang.Runtime#getRuntime()建造者模式 (Builder Pattern):
java.lang.StringBuilder#append()原型模式 (Prototype Pattern):
适配器模式 (Adapter Pattern):
java.util.Arrays#asList()桥接模式 (Bridge Pattern):
java.sql.DriverManager组合模式 (Composite Pattern):
java.awt.Container 和 javax.swing.JComponent装饰者模式 (Decorator Pattern):
java.io.BufferedInputStream外观模式 (Facade Pattern):
javax.faces.context.FacesContext享元模式 (Flyweight Pattern):
java.lang.Integer#valueOf(int)代理模式 (Proxy Pattern):
java.lang.reflect.Proxy责任链模式 (Chain of Responsibility Pattern):
java.util.logging.Logger#log()命令模式 (Command Pattern):
java.lang.Runnable解释器模式 (Interpreter Pattern):
java.util.Pattern迭代器模式 (Iterator Pattern):
java.util.Iterator 和 java.util.Enumeration中介者模式 (Mediator Pattern):
java.util.Timer备忘录模式 (Memento Pattern):
java.util.Calendar观察者模式 (Observer Pattern):
java.util.Observer 和 java.util.Observable状态模式 (State Pattern):
javax.faces.lifecycle.Lifecycle#execute()策略模式 (Strategy Pattern):
java.util.Comparator模板方法模式 (Template Method Pattern):
java.util.Collections#sort()javax.lang.model.element.ElementVisitor