1、命令模式:某个方法大部分逻辑依据确定,少部分逻辑不确定,需要等到方法执行时传入才能确定。可以把不确定逻辑封装进一个匿名类作为参数传递给方法,然后在方法体力调用传送参数的逻辑来实现不确定逻辑。
2、观察者模式:定义了一对多依赖关系,让一个或多个观察者观察一个主题对象。当主题对象变化时依次通知依赖的观察者对象。1)、被观察对象:一个容器保存注册的观察者;一个注册方法,注册保存观察者;一个轮询通知所有观察者消息方法,通过调用观察者对象的方法;2)、观察者对象:实现观察者接口方法,以便该方法可以在被观察对象有消息时进行调用通知观察者。
3、闭包:通过定义私有内部类,把内部类的作用域封装在类中,只允许外部类本身调用的情况。即一种能被调用的对象,它保存了创建它的作用域。
4、回调:1种形式)、内部类通过调用外部类的方法;2种形式)、A调用B方法时把A的引用作为参数传入,B在被调用后处理完逻辑通过传递的A引用调用A的方法返回消息给A。
5、监听:是基于特定事件的观察者模式。观察者针对消息进行过滤取有用的消息进行加工处理。监听者就是观察者,被观察者就是监听者,监听者实现的接口方法是回调方法。具体参见:Java设计模式补充:回调模式、事件监听器模式、观察者模式