Maison >Java >javaDidacticiel >Introduction à la définition et à l'utilisation du modèle d'adaptateur

Introduction à la définition et à l'utilisation du modèle d'adaptateur

零下一度
零下一度original
2017-07-18 09:51:151571parcourir

Définition du modèle d'adaptateur

Modèle d'adaptateur : Convertissez l'interface d'une classe en une autre interface souhaitée par le client. Le modèle d'adaptateur permet aux classes avec des interfaces incompatibles de fonctionner ensemble

Adapter Pattern:Convert the interface of a class into another interface clients expect.Adapter lets classes work together that couldn't otherwise because of incompatible interface.

L'alias du modèle d'adaptateur est le modèle wrapper, qui peut être utilisé soit comme modèle structurel de classe, soit comme modèle structurel d'objet. L'interface mentionnée dans la définition du modèle d'adaptateur fait référence à une interface généralisée, qui peut représenter une méthode ou un ensemble de méthodes.

Sous-classe existante, objet adapté
public class Adaptee {public void adapteeMethod(){
        System.out.println("适配方法");
    }
}
Interface de l'adaptateur
public interface Target {/** * 适配的接口     */void adapteeMethod();/** * 新增接口     */void adapterMethod();
}
Implémentation de l'interface
public class Adapter implements Target{private Adaptee adaptee;public Adapter(Adaptee adaptee) {this.adaptee = adaptee;
    }
    @Overridepublic void adapteeMethod() {this.adaptee.adapteeMethod();
    }

    @Overridepublic void adapterMethod() {
        System.out.println("新增接口");
    }
}
Tests
public static void main(String[] args) {
    Target target = new Adapter(new Adaptee());
    target.adapteeMethod();
    target.adapterMethod();
}

Le mode orchestration comprend les trois rôles suivants :

1 : Cible (classe abstraite cible) : La classe abstraite cible définit l'interface requise par le client. Il peut s'agir d'une classe ou d'une interface abstraite, ou d'une classe concrète. Dans un adaptateur de classe, puisque le langage C# ne prend pas en charge l’héritage multiple, il ne peut s’agir que d’une interface.

2 : Adaptateur (classe adaptateur) : Il peut appeler une autre interface et servir de convertisseur pour adapter Adaptee et Target. C'est le cœur du modèle d'adaptateur.

3 : Adaptee (Classe Adapter) : L'adaptateur est le rôle adapté. Il définit une interface existante. Cette interface doit être adaptée aux souhaits du client.


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn