适配器模式之单接口适配器

简介:

  在java中,除了对象适配器外,还有一种更常见的适配器,即单接口适配器,单接口适配器可以让用户更加方便的使用该接口。

  例如,java.awt.event包中的MouseListener接口一共定义了五个方法:


1 void mouseClicked(MouseEvent arg0) {}
2 void mouseEntered(MouseEvent arg0) {}
3 void mouseExited(MouseEvent arg0) {}
4 void mousePressed(MouseEvent arg0) {}
5 void mouseReleased(MouseEvent arg0) {}

  当需要一个实现MouseListener接口的类的对象时,那么在编写创建改对象时,该类必须实现MouseListener接口中的全部方法,但是往往用户仅仅需要实现该接口中的某一个方法,这样的话就出现了很多无用代码。

  如果使用单接口适配器的话就可以减少代码的编写,可以让用户专心的实现所需要的方法。

针对一个接口的单接口适配器就是已经实现了该接口的类,并对接口中的每个方法都给出了一个默认的实现。比如,java.awt.event包中的MouseAdapter就是MouseListener接口中的单接口适配器,将MouseListener接口中的五个方法全部实现为不进行任何操作,即这五个方法体中没有任何语句。

  当用户再需要一个实现MouseListener接口的类的实例时,只需要编写一个MouseAdapter的子类即可,并在子类中重写自己需要的接口方法即可。例如:

  

 1 package com.adatpe;
 2
 3 import java.awt.event.MouseAdapter;
 4 import java.awt.event.MouseEvent;
 5
 6 public class HandleEvent extends MouseAdapter {
 7     @Override
 8     public void mousePressed(MouseEvent arg0) {
 9         // TODO Auto-generated method stub
10         super.mousePressed(arg0);
11     }
12
13 }

 

  这样就没有必要实现接口的所有方法了,减少了很多无用代码。

  其实在java API中,如果一个接口中方法多于一个时,就针对该接口提供相应的单接口适配器,如人们熟悉的WindowAdapter、KeyAdapter等。

 

相关文章
|
28天前
|
设计模式 Java 数据格式
深入了解适配器模式-优雅地解决接口不匹配问题
适配器模式是一种常用的设计模式,它通过将一个类的接口转换成客户端所期望的另一个接口,使得原本由于接口不兼容或不匹配而无法协同工作的类能够一起工作。适配器模式主要应用于解决不同组件之间的接口不兼容问题,或者在第三方库与现有系统之间进行集成。通过使用适配器模式,可以提高代码的灵活性和复用性,降低系统间的耦合度。适配器模式有多种实现方式,包括类适配器模式、对象适配器模式和接口适配器模式。在使用适配器模式
77 0
|
3月前
|
设计模式 uml
设计模式-适配器模式(对象适配器)
设计模式-适配器模式(对象适配器)
19 0
|
6月前
|
设计模式 Java
JAVA设计模式10:外观模式,使得客户端可以通过简单的接口与子系统交互
JAVA设计模式10:外观模式,使得客户端可以通过简单的接口与子系统交互
|
8月前
|
设计模式 Java
装饰与适配:解析Java设计模式中的装饰器模式和适配器模式
在软件开发领域,设计模式是一组经过实践验证的最佳实践方法,用于解决常见问题。装饰器模式和适配器模式分别是结构型设计模式中的两个重要成员,它们在不同的场景中发挥着关键作用。本文将深入了解装饰器模式和适配器模式的内涵,以及它们在Java中的实际应用。
74 0
|
8月前
|
设计模式 前端开发 Java
设计模式之适配器模式(类适配器、对象适配器、源码体现)
设计模式之适配器模式(类适配器、对象适配器、源码体现)
63 0
|
8月前
|
算法 C++
C++函数适配器
C++函数适配器
|
9月前
|
设计模式 API uml
设计模式-适配器
设计模式-适配器
45 0
|
设计模式 Java
浅析Java设计模式【2.2】——适配器
Java常用设计模式,适配器模式
64 0
浅析Java设计模式【2.2】——适配器
|
设计模式 C++
设计模式之适配器
设计模式之适配器
109 0
设计模式之适配器
|
设计模式
【设计模式】适配器模式 ( 概念 | 适用场景 | 优缺点 | 外观模式对比 | 适配器模式相关角色 | 类适配器 | 对象适配器 | 实现流程 )
【设计模式】适配器模式 ( 概念 | 适用场景 | 优缺点 | 外观模式对比 | 适配器模式相关角色 | 类适配器 | 对象适配器 | 实现流程 )
372 0