ブリッジ (ブリッジ) パターンは次のように定義されます。抽象化と実装を分離し、独立して変更できるようにします。これは、継承関係の代わりに組み合わせ関係を使用して実装されるため、抽象化と実装の 2 つの可変次元の結合度が減少します。
1. 抽象化と実装の分離、強力な拡張性
2. 開始と終了の原則の遵守
3. 原則の遵守
4. 実装の詳細は顧客には透過的です
集約関係は抽象化層で確立されるため、開発者は設計とプログラミングを行う必要があります。システムを正しく識別するための抽象化 システムには独立して変化する 2 つの次元があり、システムの理解と設計がさらに困難になります。
抽象化部分と実装部分を分離し、両者の間の継承関係を解除し、代わりに結合関係を使用することができます。
ケース: ブルー ラビット パレス マスターがスカートを購入する
スカートには、色とスタイルという 2 つの次元があります。
色は黄色と赤です;
スタイルはロングスカートとショートスカートに分かれています;
Abstraction (抽象化) 役割: Color
Extended抽象化 (洗練された抽象化) 役割: 黄色と赤
実装者の役割: スタイル
具体的な実装者の役割: ロングスカートとショートスカート
カラーインターフェイスshow() 抽象メソッド
public interface Color { void show(); }
yellow クラスを宣言し、カラー インターフェイスを実装します。
public class ColorYellow implements Color { @Override public void show() { System.out.println("黄色的"); } }
red クラスを実装し、カラー インターフェイスを実装します。
public class ColorRed implements Color { @Override public void show() { System.out.println("红色的"); } }
Skirt クラス、color 属性と抽象メソッドを宣言
abstract class Qun { protected Color color; protected Qun() { } protected Qun(Color color) { this.color = color; } public abstract void shows(); }
Skirt クラスを継承し、抽象メソッドを実装
public class QunChang extends Qun { protected QunChang() { } protected QunChang(Color color) { super(color); } @Override public void shows() { System.out.println("长裙"); color.show(); } }
スカートクラスを継承して抽象メソッド
public class QunDuan extends Qun { protected QunDuan() { } protected QunDuan(Color color) { super(color); } @Override public void shows() { System.out.println("短裙"); color.show(); } }
newを実装し、赤いオブジェクトをロングスカートに渡します。パラメータ 。
rreeee以上がJavaデザインパターンのブリッジモードを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。