เมนูนำทาง
แบบแผนโรงงานนามธรรม ตัวอย่าง/* * GUIFactory example */abstract class GUIFactory { public static GUIFactory getFactory () { int sys = readFromConfigFile ("OS_TYPE") ; if (sys == 0) { return new WinFactory () ; } else { return new OSXFactory () ; } } public abstract Button createButton () ;}class WinFactory extends GUIFactory { public Button createButton () { return new WinButton () ; }}class OSXFactory extends GUIFactory { public Button createButton () { return new OSXButton () ; }} abstract class Button { public abstract void paint () ;}class WinButton extends Button { public void paint () { System.out.println ("I'm a WinButton") ; }} class OSXButton extends Button { public void paint () { System.out.println ("I'm an OSXButton") ; }} public class Application{ public static void main (String[] args) { GUIFactory factory = GUIFactory.getFactory () ; Button button = factory.createButton () ; button.paint () ; } // Output is either: // "I'm a WinButton" // or: // "I'm an OSXButton"}
เมนูนำทาง
แบบแผนโรงงานนามธรรม ตัวอย่างใกล้เคียง
แบบแผนการออกแบบซอฟต์แวร์ แบบแผนซิงเกิลตัน แบบแผนแฟกทอรีเมธอด แบบแผนโรงงานนามธรรม แบบแผนประกอบรวม แบบแผนอะแดปเตอร์ แบบแผนเทมเพลตเมธอด แบบแผนผู้สังเกต แบบแผนอินเทอร์พรีเตอร์ แบบแผนฟะซาดแหล่งที่มา
WikiPedia: แบบแผนโรงงานนามธรรม