ホームページ >Java >&#&チュートリアル >Java 設計パターン: ブリッジ パターンの抽象化と実装の分離についての理解

Java 設計パターン: ブリッジ パターンの抽象化と実装の分離についての理解

php是最好的语言
php是最好的语言オリジナル
2018-08-01 14:35:112501ブラウズ

ブリッジ モード: 抽象化部分を実装部分から分離します。これにより、抽象化と実装が分離され、独立して変更できるようになります。

抽象部分と実装部分はブリッジ(インターフェース)を介して分離されており、ブリッジはこのインターフェースを継承し、抽象クラスのインターフェース内のメソッドを呼び出して、そのインターフェースを指します。実装パーティ。このように、実装側はブリッジインターフェースを実装することで一方的な展開を行い、抽象側は抽象クラスを継承して一方的な展開を行いますが、どちらもブリッジインターフェースを介して呼び出され、インターフェースは双方の展開の影響を受けません。

UML クラス図:

Java 設計パターン: ブリッジ パターンの抽象化と実装の分離についての理解

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();
    }
}

ブリッジ モードは方向性があります。ブリッジにバインドされているパーティは呼び出し先であり、パッシブ パーティに属し、抽象パーティはアクティブ パーティに属します。

ブリッジ モードは、コードの結合を減らし、システムのスケーラビリティを向上させ、詳細の透明性を実現します。しかし、ブリッジモードの導入により、システムの理解と設計がさらに難しくなりました

関連記事:

Javaデザインパターンにおけるブリッジモードの詳細説明

JavaScriptデザインパターンシリーズ6:ブリッジモード

関連ビデオ:

JavaScript デザイン パターンに関する完全なビデオ チュートリアル

以上がJava 設計パターン: ブリッジ パターンの抽象化と実装の分離についての理解の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。