A Categorization of Patterns by Intent
Intent Patterns
Interfaces:ADAPTER, FACADE, COMPOSITE, BRIDGE
Responsibility:SINGLETON, OBSERVER, MEDIATOR, PROXY, CHAIN OF RESPONSIBILITY, FLYWEIGHT
Construction:BUILDER, FACTORY METHOD, ABSTRACT FACTORY,PROTOTYPE, MEMENTO
Operations:TEMPLATE METHOD, STATE, STRATEGY, COMMAND,INTERPRETER
Extensions:DECORATOR, ITERATOR, VISITOR
抽象类与接口:
一个类可以实现多个接口,但只能继承最多一个抽象类。
抽象类可以包含具体方法,但接口的所有方法都是抽象的。
抽象类可以声明和使用字段,但接口不能,但可以创建静态的final常量。
抽象类中的方法可心是四种修饰,但接口的方法都是public。
抽象类可以定义构造函数,但接口不能。
接口的方法可以不显式声明为public,abstract.但最终还是public,abstract.
接口的常量可以不显示声明public,static,final,它不是变量,并且最终还是public,static,final
接口的威力在于它描述了类的协作中所期望和不期望的作为。接口和抽象类有点象,定义了行为但不实现。