Bridge-Modus: Trennen Sie den abstrakten Teil von seinem Implementierungsteil, sodass Abstraktion und Implementierung entkoppelt sind und sich unabhängig voneinander ändern können.
Der abstrakte Teil und der Implementierungsteil sind über eine Brücke (Schnittstelle) entkoppelt. Die Implementierungspartei erbt diese Schnittstelle und die abstrakte Partei ruft die Methode in der Schnittstelle auf abstrakte Klasse, die auf die Implementierungspartei verweist. Auf diese Weise führt die Implementierungsseite eine einseitige Erweiterung durch, indem sie die Brückenschnittstelle implementiert, und die abstrakte Seite führt eine einseitige Erweiterung durch, indem sie die abstrakte Klasse erbt. Beide werden über die Brückenschnittstelle aufgerufen, und die Schnittstelle wird von der Erweiterung beider Parteien nicht beeinflusst.
UML-Klassendiagramm:
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(); } }
Der an die Brücke gebundene Teilnehmer ist der Angerufene, der zur passiven Seite gehört abstrakte Seite. Gehört der aktiven Partei.
Der Bridge-Modus reduziert die Kopplung des Codes, verbessert die Skalierbarkeit des Systems und sorgt für Transparenz der Details. Die Einführung des Bridge-Modus hat es jedoch schwieriger gemacht, das System zu verstehen und zu entwerfen
Verwandte Artikel:
Detaillierte Erläuterung des Bridge-Modus in Java-Entwurfsmustern
JavaScript Design Pattern Serie 6: Brückenmuster
Ähnliche Videos:
Komplettes Video-Tutorial für JavaScript-Designmuster
Das obige ist der detaillierte Inhalt vonJava-Entwurfsmuster: Verständnis der Abstraktion von Brückenmustern und der Implementierungsentkopplung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!