Définition (Baidu Encyclopedia) :
En programmation informatique, le modèle d'adaptateur (parfois aussi appelé packaging style ou packaging) adapte l'interface d'une classe à ce que l'utilisateur attend.
Une adaptation permet à des classes qui ne fonctionneraient normalement pas ensemble en raison d'interfaces incompatibles de travailler ensemble en encapsulant la propre interface de la classe dans une classe existante.
Diagramme de classes UML :
Code spécifique :
public class Client {public static void main(String[] args) { Adaptee adaptee = new Adaptee(); Adapter adapter = new Adapter(adaptee); adapter.request(); } }public interface Target {void request(); }public class Adaptee {void adapteeRequest() { System.out.println("本类"); } }public class Adapter implements Target { Adapter(Adaptee adaptee) {this.adaptee = adaptee; }private Adaptee adaptee; @Overridepublic void request() { System.out.println("适配类"); adaptee.adapteeRequest(); } }
Exemples :
Les exemples les plus courants de ce modèle sont diverses interfaces d'adaptateur lors de la connexion d'un Mac. à un projecteur, il nécessite généralement une interface adaptateur. Il s'agit du mode adaptateur.
Dans les exemples de développement réels, le système actuel est développé de manière itérative et étape par étape. Ce qui se passe, c'est que la même fonction peut avoir deux ou plusieurs interfaces différentes
Certaines d'entre elles doivent appeler la précédente, certaines appellent. plus tard sont foirés, vous devez donc ajouter un adaptateur pour rendre les deux nouveaux et anciens compatibles.
Scénarios applicables :
Vous souhaitez utiliser une classe existante, mais son interface ne répond pas à vos besoins.
Vous souhaitez créer une classe réutilisable qui puisse fonctionner avec d'autres classes sans rapport ou imprévues (c'est-à-dire des classes dont les interfaces ne sont pas nécessairement compatibles).
Vous souhaitez utiliser certaines sous-classes existantes, mais il n'est pas possible de sous-classer chacune d'entre elles pour qu'elles correspondent à leur interface. L'adaptateur d'objet peut s'adapter à son interface de classe parent
Avantages et inconvénients :
Avantages :
Meilleures réutilisabilité et évolutivité
Inconvénients :
La combinaison de nombreux adaptateurs rendra le système trop confus et difficile à comprendre.
Résumé : Le mode adaptateur est relativement simple. Il peut se résumer en deux mots : « compatible ». C'est l'essence même de ce mode. Bien entendu, le système n'a pas besoin d'être compatible. être meilleur.
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!