Heim >Java >javaLernprogramm >So implementieren Sie das Factory-Methodenmuster mithilfe von Java-Code
Definition: Das Factory-Methodenmuster ist eine weitere Abstraktion des einfachen Factory-Musters. Der Vorteil besteht darin, dass das System neue Produkte einführen kann, ohne es zu ändern Das heißt, das Öffnungs- und Schließprinzip ist erfüllt. Erstellen Sie eine Schnittstelle für die Objektinstanziierung und lassen Sie die Unterklasse entscheiden, welche Klasse instanziiert wird, wodurch der Klasseninstanziierungsprozess auf die Unterklasse verschoben wird.
/** * 抽象工厂:提供具体工厂的共有方法 */ public interface Product { public void show(); } public class ConcreteProduct1 implements Product { @Override public void show() { System.out.println("具体产品1展示..."); } } public class ConcreateProduct2 implements Product { @Override public void show() { System.out.println("具体产品2展示..."); } } /** * 抽象工厂 */ public interface AbstractFactory { public Product createProduct(); } /** * 具体工厂1产生具体产品1 */ public class ConcreteFactory1 implements AbstractFactory { @Override public Product createProduct() { ConcreteProduct1 concreteProduct1 = new ConcreteProduct1(); System.out.println("具体工厂1创建具体产品1..."); return concreteProduct1; } public class ConcreteFactory2 implements AbstractFactory { @Override public Product createProduct() { System.out.println("具体工厂2产生具体产品2..."); return new ConcreateProduct2(); } }# 🎜🎜#Aufrufmethode:
//获取具体产品1 Product product = new ConcreteFactory1().createProduct(); product.show(); Product product1 = new ConcreteFactory2().createProduct(); product1.show();
Verwendungsschritte:
Erstellen Sie eine abstrakte Fabrikklasse und definieren Sie eine bestimmte Fabrik. Die öffentliche Schnittstelle
Erstellen Sie eine bestimmte Fabrikklasse und definieren Sie die Methode zum Erstellen eines entsprechenden spezifischen Produkts Instanz
Caller Rufen Sie die Methoden bestimmter Factory-Klassen auf, um Instanzen verschiedener spezifischer Produkte zu erstellen
5. Erkunden Sie das Factory-Muster erneut
6. Vorteile und Nachteile
Vorteile:
Hohe Flexibilität, nur für die Erstellung neuer Produkte Schreiben Sie eine weitere entsprechende Fabrikklasse
Benutzer müssen nur den Namen der Fabrik angeben, um das gewünschte Produkt zu erhalten, und müssen nicht den spezifischen Produkterstellungsprozess angeben# 🎜🎜##🎜 🎜#
#🎜 🎜#
Jede Fabrik kann nur eine Art von Produkt produzieren. Dieser Mangel kann durch die Verwendung des abstrakten FabrikmustersDas obige ist der detaillierte Inhalt vonSo implementieren Sie das Factory-Methodenmuster mithilfe von Java-Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!