मैंने wikipedia से इस ब्रिज पैटर्न उदाहरण पर कुछ समय व्यतीत किया था, हालांकि, मुझे अभी भी समझ में नहीं आता कि यह पुल पैटर्न क्या समझाने की कोशिश कर रहा है।ए ब्रिज पैटर्न उदाहरण
interface DrawingAPI { public void drawCircle(double x, double y, double radius); } /** "ConcreteImplementor" 1/2 */ class DrawingAPI1 implements DrawingAPI { public void drawCircle(double x, double y, double radius) { System.out.printf("API1.circle at %f:%f radius %f\n", x, y, radius); } } /** "ConcreteImplementor" 2/2 */ class DrawingAPI2 implements DrawingAPI { public void drawCircle(double x, double y, double radius) { System.out.printf("API2.circle at %f:%f radius %f\n", x, y, radius); } } /** "Abstraction" */ interface Shape { public void draw(); // low-level public void resizeByPercentage(double pct); // high-level } /** "Refined Abstraction" */ class CircleShape implements Shape { private double x, y, radius; private DrawingAPI drawingAPI; public CircleShape(double x, double y, double radius, DrawingAPI drawingAPI) { this.x = x; this.y = y; this.radius = radius; this.drawingAPI = drawingAPI; } // low-level i.e. Implementation specific public void draw() { drawingAPI.drawCircle(x, y, radius); } // high-level i.e. Abstraction specific public void resizeByPercentage(double pct) { radius *= pct; } } /** "Client" */ class Main { public static void main(String[] args) { Shape[] shapes = new Shape[2]; shapes[0] = new CircleShape(1, 2, 3, new DrawingAPI1()); shapes[1] = new CircleShape(5, 7, 11, new DrawingAPI2()); for (Shape shape : shapes) { shape.resizeByPercentage(2.5); shape.draw(); } } }
उपवर्ग CircleShape निर्माता अपनी विधि ड्रा() में 4 आर्ग लेता है, पहले 3 आर्ग 4 आर्ग जो DrawingAPI से किसी भी उपवर्ग हो सकता है करने के लिए पारित कर रहे हैं। तो क्या इसका मतलब यह है कि पुल पैटर्न का उपयोग लचीलापन बढ़ा सकता है? और क्या ऐसी चीजें हैं जो हमें बता सकती हैं?
धन्यवाद !!!!
धन्यवाद, मैं अब पैटर्न का एक और अधिक साफ होता है। पैटर्न के बारे में घंटों के लिए Google के बाद, मुझे पैटर्न http://www.allappforum.com/java_design_patterns/creational_patterns.htm पुल पैटर्न के बारे में एक सरल उदाहरण है। स्विच नामक एक इंटरफ़ेस है, और दो उप-वर्गों को बल्ब और फैन कहा जाता है, प्रत्येक उप-वर्ग में स्विच के लिए अपना कार्यान्वयन होता है। एक अच्छा और सरल उदाहरण। – user200340