Maison  >  Article  >  Java  >  Modèle de conception Java : compréhension de l'abstraction du modèle de pont et du découplage de l'implémentation

Modèle de conception Java : compréhension de l'abstraction du modèle de pont et du découplage de l'implémentation

php是最好的语言
php是最好的语言original
2018-08-01 14:35:112466parcourir

Mode pont : séparez la partie abstraite de sa partie implémentation, afin que l'abstraction et l'implémentation soient découplées afin qu'elles puissent changer indépendamment.

Dissocier la partie abstraite et la partie implémentation via un pont (interface). Le pont est une interface. L'implémenteur hérite de cette interface, et la partie abstraite appelle la méthode dans l'interface dans la classe abstraite. pour pointer vers l'exécutant. De cette façon, le côté implémentation effectue une expansion unilatérale en implémentant l'interface pont, et le côté abstrait effectue une expansion unilatérale en héritant de la classe abstraite. Les deux sont appelés via l'interface pont, et l'interface n'est pas affectée par l'expansion des deux parties.

Diagramme de classes UML :

Modèle de conception Java : compréhension de labstraction du modèle de pont et du découplage de limplémentation

interface Driver {
    public void connect();
}

class MysqlDriver implements Driver {
    @Override
    public void connect() {
        System.out.println("连接Mysql数据库");
    }
}
class OracleDriver implements Driver {
    @Override
    public void connect() {
        System.out.println("连接Oracle数据库");
    }
}
//抽象类
abstract class Bridge {
    private Driver driver;
    public void connect() {
        driver.connect();
    }
    public void setDriver(Driver driverTemp) {
        this.driver = driverTemp;
    }
    public Driver getDriver() {
        return this.driver;
    }
}
//实现类
class MyBridge extends Bridge { }
//测试类
public class BridgeTest {
    public static void main(String[] args) {
        Bridge mysqlBridge = new MyBridge();

        Driver mysqlDriver = new MysqlDriver();
        mysqlBridge.setDriver(mysqlDriver);
        mysqlBridge.connect();

        OracleDriver oracleDriver = new OracleDriver();
        mysqlBridge.setDriver(oracleDriver);
        mysqlBridge.connect();
    }
}

Le mode pont est directionnel. La partie liée par le pont est l'appelé et appartient à la partie passive. Le côté abstrait appartient au côté actif.

Le mode pont réduit le couplage du code, améliore l'évolutivité du système et atteint la transparence des détails. Cependant, l'introduction du mode pont a rendu plus difficile la compréhension et la conception du système

Articles associés :

Explication détaillée du mode pont dans les modèles de conception Java

Série de modèles de conception JavaScript 6 : Modèle de pont

Vidéos associées :

Tutoriel vidéo complet sur le modèle de conception JavaScript

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