首先看JDK对适配器设计模式的应用

接口 MouseListener

用户可以创建MouseListener的实现类,来响应各种鼠标事件。

由于接口中的方法都是抽象的,因此实现类必须实现所有的方法。否则就必须声明为抽象类。

但在某些情况下,用户有可能只想处理按下鼠标按钮的事件,而忽略其他事件

此时MouseListener接口的实现类仅仅实现了mousePressed()方法,但不得不对其他方法提供空的方法体。

为了简化编程 JDK为MouseListener提供了一个默认的适配器

类 MouseAdapter 

为所有的方法提供空的方法体,接收鼠标事件的抽象适配器类。此类中的方法为空。此类存在的目的是方便创建侦听器对象。

用户自定义的MyMouseListener监听器可以继承MouseAdapter类,在MyMouseListener类中,只需要覆盖特定的方法 而不必实现所有的方法。

可以通过继承来简化编程,这是默认适配器的优点所在。

但是缺点是MyMouseListener不能再继承其他的类,因为java只支持单继承


上述MouseAdapter是提供了空的方法体。在应用中我们Adapter类提供的方法体,可以先去实现一些东西(子类去用的时候 可以在来重写这些方法)

SpringMVC的HandlerAdapter接口就有SpringMVC默认提供了几个适配器类供我们选择

AbstractHandlerMethodAdapterAnnotationMethodHandlerAdapterHttpRequestHandlerAdapterRequestMappingHandlerAdapterSimpleControllerHandlerAdapterSimpleServletHandlerAdapter

 

版权声明:本文为ssskkk原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ssskkk/p/9315679.html