`
dyllove98
  • 浏览: 1382048 次
  • 性别: Icon_minigender_1
  • 来自: 济南
博客专栏
73a48ce3-d397-3b94-9f5d-49eb2ab017ab
Eclipse Rcp/R...
浏览量:38325
4322ac12-0ba9-3ac3-a3cf-b2f587fdfd3f
项目管理checkList...
浏览量:78632
4fb6ad91-52a6-307a-9e4f-816b4a7ce416
哲理故事与管理之道
浏览量:131767
社区版块
存档分类
最新评论

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

 
阅读更多

在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等。

 

 

分享到:
评论

相关推荐

    java设计模式【之】适配器模式【源码】【场景:水和容器】

    java设计模式【之】适配器模式【源码】【场景:水和容器】 * 适配器模式,类似(亡羊补牢) * 已经存在的类(功能已经开发完成了),与新需求的功能相似,但是略有差异 * 当已经存在的方法无法满足现有需求,需要...

    设计模式:结构型-适配器模式

    为三类: 类适配器模式、 对象适配器模式、 接口适配器模式。 以生活中手机充电为例来讲解适配器模式, 手机本身并不能直接用220V交流电, 需要将220V的交流电转换为5V的直流电, 在这个过程 中, 充电器本身相当于...

    适配器模式

    适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个...

    适配器模式实例之算法适配

    在计算机编程中,适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。

    适配器模式.txt

    适配器模式是一种结构型设计模式。适配器模式的思想是:把一个类的接口变换成客户端所期待的另一种接口

    设计模式系列之适配器模式

    在计算机编程中,适配器模式(有时候也称包装样式或者包装)将一个类的接口适配成用户所期待的。一个适配允许通常因为接口不兼容而不能在一起工作的类工作在一起,做法是将类自己的接口包裹在一个已存在的类中。

    适配器模式在android中使用

    适配器模式是一种行为模式,它可以把一个类的接口转换成为另一个所期待的另一种接口,这样可以使原本因接口无法在一起工作的两个类能够在一起工作了。适配器模式有类的适配器和对象的适配器两种形式,这里只介绍对象...

    Java设计模式之适配器模式和外观模式

     所谓适配器模式,将一个类的接口,转换为客户所期望的另一个接口。适配器让原本接口不兼容的类可以合作无间。  适配器主要组成包括:  目标接口:客户端所希望得到的接口  适配器:这个主要是将被适配器...

    PHP设计模式之适配器模式原理与用法分析

    本文实例讲述了PHP设计模式之适配器模式原理与用法。分享给大家供大家参考,具体如下: 一、什么是适配器模式 适配器模式有两种:类适配器模式和对象适配器模式。其中类适配器模式使用继承方式,而对象适配器模式...

    设计模式_适配器模式.zip

    适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个...

    Java实现适配器模式-设计模式

    适配器模式允许不兼容的接口进行协同工作,通过适配器类将一个类的接口转换成客户端期望的接口形式。适配器模式可以包括对象适配器和类适配器两种实现方式,上述示例中使用的是对象适配器方式。适配器模式能够提供...

    适配器模式(Adapter Pattern)原理图

    适配器模式是一种结构型设计模式,它允许接口不兼容的两个类可以协同工作。以下是该模式的要点: 1. **角色**: - **Target(目标接口)**:客户端期望调用的接口。 - **Adaptee(适配者)**:现有的、接口与目标...

    uml 文档 适配器模式

    将一个类的接口转换成客户希望的另外一个接口。A d a p t e r 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

    设计模式之适配器模式(Adapter Pattern)

    设计模式之适配器模式(Adapter Pattern) 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。

    第9讲_适配器模式(Adapter)

    基于类的Adapter模式的一般结构如下:Adaptee类为Adapter的父类,Adaptee类为适配源,适配目标(接口)也是Adapter的父类;基于类的Adapter模式比较适合应用于Adapter想修改Adaptee的部分方法的情况。 基于对象的...

    结构型模式之适配器模式

    3、适配器模式(Adapter) 用意:把一个类的接口变换成客户所期待的另外一个接口。

    设计模式,适配器模式

    1. 概述  将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类... 3.3 适配器(Adapter):通过包装一个需要适配的对象,把原接口转换成目标接口。  4. 模式解读

    C#学习笔记之适配器模式详解

     一般而言,使用适配器模式是出于无奈之举,一般存在于软件开发后期或者维护期,在软件设计阶段,我们还是尽量避免该模式的使用。 适配器模式的组成  Target:目标接口,也就是客户所期待的接口。目标可以是具体的...

    适配器设计模式

    适配器模式的定义是:将一个类的接口,转换成客户期望的另一个接口,适配器让原本接口不兼容的类可以作无间。

    第10章_适配器模式.ppt

    在软件开发中采用类似于电源适配器的设计和编码技巧被称为适配器模式。 通常情况下,客户端可以通过目标类的接口访问它所提供的服务。有时,现有的类可以满足客户类的功能需要,但是它所提供的接口不一定是客户类所...

Global site tag (gtag.js) - Google Analytics